单片机串行口与PC机通信_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
单片机串行口与PC机通信
上传于|0|0|文档简介
&&单片机串行口与PC机通信论文设计.doc
阅读已结束,如果下载本文需要使用3下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩13页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢新手求助~~用普通IO口实现串口通信 - 单片机/MCU论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
新手求助~~用普通IO口实现串口通信
16:47:42
单片机用普通IO口实现串口通信在理解单片机异步串口通信的基础上,不使用单片机的串口模块,用普通的IO口实现与PC机的串口通信的功能,要求实现的基本参数:波特率1200、数据位8位、无奇偶校验、停止位1位。其他功能:有关参数能方便地修改。可以用Proteus仿真或现成的单片机开发板做。有没有大神做过相关的设计?初学者搞不定这个设计要求!!!!!!!!如果有做过的希望可以共享一下资料或者经验..........懂得大神也可以说说具体的思路······
16:48:06
大神快来~~{:1:}{:1:}
16:56:32
这个问题比较难
18:52:05
怎么都没人呢{:18:}{:18:}
18:53:57
有没有有{:11:}{:11:}
19:10:40
来人a{:11:}{:11:}
22:03:15
在理解单片机异步串口通信的基础上,不使用单片机的串口模块,用普通的IO口实现与PC机的串口通信的功能,要求实现的基本参数:波特率1200、数据位8位、无奇偶校验、停止位1位。
其他功能:有关参数能方便地修改。
可以用Proteus仿真或现成的单片机开发板做。
有没有大神做过相关的设计?初学者搞不定这个设计要求!!!!!!!!
如果有做过的希望可以共享一下资料或者经验..........
懂得大神也可以说说具体的思路······
22:28:50
首先,我也是初学者,别对咱太期待哈.
个人理解,串行口进行通讯主要是收发方便吧,设定完波特率后,只要数据发到sbuf,就能自动发送出去;接受则将接收位置1,就能不停检测接收口;
如果只用普通IO口,那就通过设定定时器,时间一到触发中断就输出一位,知道发送完毕;
接收么,用另一个定时器不断检测,当有数据就读取(串行口接收在收到之前是以波特率好几倍不断扫描的);
以上大略思路,至于细致的就LZ自己思考哈.有什么不对的也欢迎其它大大指出.
22:30:20
奇怪了,发帖还要审核的
22:57:10
发个回复好难啊!!!!!!!!!!!
18:48:39
首先你要知道你的单片机的扫描P口频率是多少(要精准),如果快了就加延时,知道9600的波特率就可以算出每秒钟收发多少个位,要使单片机每秒钟接收多少位(当然每扫描一次肯定就可以接收一位),要通过计算的,而且这之中的计算要很精准,说难也难,说简单也简单,然后通过I/O口读取功能,读取数据,就可以做到和串口一样的效果,希望对你有所帮助。
11:23:06
看看STC15F104E用普通IO口模拟串口的示例就行了。。虽然它的那个用状态机写的。。比较难懂。。但是效率高。。。
15:06:38
这个就跟用一根普通I/O口实现两个单片机通讯一样,发射比较简单,你模拟串口时序就行了,接收的话你就用一个定时器不断的去采样I/O口的电平高低,打个比方:波特率1200,也就是一位833us,那么你就每83us采样一次,如果连续10次采样到高电平,代表1,连续10次采样到低电平代表0,用这个思路去做就行了,就是比较耗CPU。
23:33:30
主支持楼主支持楼主主支持楼主支持楼主主支持楼主支持楼主
14:37:55
主支持楼主支持楼主主支持楼主支持楼主主支持楼主支持楼主
更楼上一样我也是赚积分的
14:38:05
主支持楼主支持楼主主支持楼主支持楼主主支持楼主支持楼主
更楼上一样我也是赚积分的
15:39:35
请问你的问题解决了嘛?我也需要做同样的工作,能讲解一下吗?
等待验证会员
12:26:45
请问你的问题解决了嘛?我也需要做同样的工作,能讲解一下吗?
我使用STC89C52(好老的MCU,时钟频率Hz),实现了这个功能(我是用来做Debug口,硬件串口模块做通信占用了),IO口随便定,波特率目前最高支持19200,准备继续优化到115200,
6个问题&&&&&&&&7460个浏览
6个问题&&&&&&&&4224个浏览
8个问题&&&&&&&&5218个浏览
每天选一个需要解决的问题,大家一起来帮忙。
授人玫瑰,手有余香
您可能在工作中遇到如下问题,点击下载即可预览专家给出的答案。
问:我从事数码电子产品工作,为什么一开始要用模拟元件?
问:微调器会不会让我的设计变得太复杂,影响用户使用?
问:选择微调器前应该考虑哪些特性?
Powered by关于STC15W401AS系列单片机串口选择的问题|我爱单片机 - 数码之家
查看完整版本: [--
赞助商链接
在STC15W401AS系列单片机的介绍中有这么一条,如下图所示:[attachment=7607864]我只想把串口设在P3.0/P3.1,不想另行更改,按照上述要求,所以在ISP编程时在STC-ISP软件的硬件选项中勾选“下次冷启动时,P3.2/P3.3为0/0时才以可下载程序”,假设我在P3.2及P3.3接了两个NPN三极管,且为高电平状态,那么问题来了,此时P3.2/P3.3不为0/0,是不是我就下载不了了?不知道这样理解对不对?请各位大神不吝赐教,谢谢
赞助商链接
赞助商链接
大神快来啊
是, 需要接地,才能下载.
如果设置了,这两个脚必须都为0才能下载,可以在下次下载时更改设置
另外,就算是用p30,p31做串口,也不必选上p32,p33低电平才能下载,不必理会
选 择了不为0的话就下载不了
手动拿两根杜邦针(公头的搭在上面)接地强行拉低不就好了
不要理会他,该怎么用怎么用→_→这个是防范在串口通讯中被误判为下载的→_→
同意,这个选项和用哪组串口貌似没有关联,除非这个型号有bug
:不要理会他,该怎么用怎么用→_→这个是防范在串口通讯中被误判为下载的→_→&( 08:35)&不会造成误下载。别说误下载,就是正常下载还有连接不上的时候
benli:不会造成误下载。别说误下载,就是正常下载还有连接不上的时候 ( 11:21) 那这个要求吧3.2,3.3置低再下载的作用是啥?还是说吧串口转移到另外的io是为了防止其他的串口设备对下载的干扰?
置低才能下载可能是为了加一重保险至于引脚影射,很多单片机都可以啊
:那这个要求吧3.2,3.3置低再下载的作用是啥?还是说吧串口转移到另外的io是为了防止其他的串口设备对下载的干扰?&( 11:23)&STC单片机ISP下载基本上是这样的:上电或者复位到ISP引导区时,监控程序先检p30有没有7f的握手信号,如果检测到一串7f,就会向上位机STCISP发送单片机型号设定等数据,STCISP收到后校验型号是否正确,然后再次握手,成功后发送hex和设置等数据,误下载不存在,除非是故意模拟这个流程
benli:STC单片机ISP下载基本上是这样的:上电或者复位到ISP引导区时,监控程序先检p30有没有7f的握手信号,如果检测到一串7f,就会向上位机STCISP发送单片机型号设定等数据,STCISP收到后校验型号是否正确,然后再次握手,成功后发送hex和设置等数据,误下载不存在,除非是故意模拟这 .. ( 11:35) 我用软件抓过下载过程看过,还挺复杂的,有好多重校验,中间还会变波特率
:我用软件抓过下载过程看过,还挺复杂的,有好多重校验,中间还会变波特率&( 12:30)&所以误下载是几乎是不可能的,不知道最高波特率和最低波特率设置为相同还会不会变波特率
benli:所以误下载是几乎是不可能的,不知道最高波特率和最低波特率设置为相同还会不会变波特率 那样应该不会变,不过好像大家一般都是用默认,而且某宝的自动下载器最低波特率大于9600就不能检测7f并断电自动下载了。我后来自己搞了个自动下载器,最低波特率不管设置多高都能用。但是就遇到了个蛋疼的问题,用自制的自动下载器下载stc15f104e的时候有90%概率在调节内部晶振频率那个步骤失败,换某宝买的就没问题,单纯用ch340手动控制也没问题,自制的下载其他单片机也没问题,所以现在很是不解,不知坛友是否了解一二?还有就是stc15w4k61s好像对最低波特率比较挑剔,目前只有设置9600才能比较高的概率能下载进去(失败表现为自动下载器已经断电上电多次,但是单片机一直识别不到7f下载信号),也是很奇怪
benli:另外,就算是用p30,p31做串口,也不必选上p32,p33低电平才能下载,不必理会 ( 07:32) 嗯,这STC还真是……差点就信了他,谢谢啦
jjbboox:同意,这个选项和用哪组串口貌似没有关联,除非这个型号有bug ( 10:21) 嗯,懂了,谢谢啊,数码之家真好,帖子一般不会沉,百度贴吧就难说了,也许是我发帖方式不对……以后转投数码之家吧
:不要理会他,该怎么用怎么用→_→这个是防范在串口通讯中被误判为下载的→_→ ( 08:35) 嗯,谢谢你数码之家真好,帖子一般不会沉,百度贴吧就难说了,也许是我发帖方式不对……以后转投数码之家吧
fengzheng199:手动拿两根杜邦针(公头的搭在上面)接地强行拉低不就好了 ( 08:08) 嗯,懂了,谢谢啦
luannan:选 择了不为0的话就下载不了 ( 07:52) 嗯,懂了,谢谢啊
一灯:是, 需要接地,才能下载. ( 06:59) 嗯,懂了,谢谢
如果设置了,这两个脚必须都为0才能下载,可以在下次下载时更改设置
fengzheng199:手动拿两根杜邦针(公头的搭在上面)接地强行拉低不就好了&( 08:08)& 那不是短路了5v 和地?&&。。。 烧电源的
leanwzl:嗯,懂了,谢谢&( 14:42)&相同的内容不必回复多次吧
mysy:那不是短路了5v 和地?&&。。。 烧电源的&( 15:00)&暂时断开,没别的办法了
mysy:那不是短路了5v 和地? 。。。 烧电源的 ( 15:00) 看实际电路啦。我是想一般IO口上不会直接接电源,大概是上拉电阻什么的
benli:相同的内容不必回复多次吧 ( 15:18) 嘿嘿,我以为每个都要回复一次咧
查看完整版本: [--
Powered by
Gzip enabledSTC15W和STC15F系列单片机串口1通信_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
STC15W和STC15F系列单片机串口1通信
上传于|0|0|文档简介
&&STC15W和STC15F系列单片机串口1通信,解决例程不能用的bug
你可能喜欢STC15F104E单片机之串口、外部中断、掉电存储、定时器_文档下载
亿万文档 免费下载
当前位置: &
& STC15F104E单片机之串口、外部中断、掉电存储、定时器
STC15F104E单片机之串口、外部中断、掉电存储、定时器
单片机串口
/********************************************************************单片机与PC机采用9针串口,MAX232通讯,波特率默认为9600.单片机接收PC机发送的数据码表如下:01、开:PC发送'A'; 02、关:PC发送'B'; 03、输出状态查询:PC发送C;单片机返回输出状态‘A’表示开 ‘B’表示关;04、继电器状态取反:PC发送D 继电器状态取反*********************************************************************/#include ®52.h& #include &intrins.Hdefine uchar unsigned char //宏定义字符型变量#define uint
unsigned int //宏定义整型变量/********************************************************************eeprom函数声明*********************************************************************/extern void IapIdle();
//操作函数extern uchar IapReadByte(uint addr);
//读取函数extern void IapProgramByte(uint addr,uchar dat);
//写入函数extern void IapEraseSector(uint addr);
//擦除函数/********************************************************************波特率设定*********************************************************************///#define BAUD 0XF400
//1200bps@ 11.0592MHZ//#define BAUD 0XFA00
//2400bps@ 11.0592MHZ//#define BAUD 0XFD00
//4800bps@ 11.0592MHZ#define BAUD 0XFE80
//9600bps@ 11.0592MHZ//#define BAUD 0XFF40
//19200bps@ 11.0592MHZ//#define BAUD 0XFFA0
//38400bps@ 11.0592MHZuchar miao,fen,
//用于存储单片机接收发送缓冲寄存器SBUF里面的内容sbit P33=P3^3;
//定义继电器控制输出脚/********************************************************************定义特殊寄存器*********************************************************************/sfr AUXR
//辅助寄存器sbit RXB=P3^0;sbit TXB=P3^1;/********************************************************************定义数据类型*********************************************************************/uchar TBUF,RBUF;uchar TDAT,RDAT;uchar TCNT,RCNT;uchar TBIT,RBIT;uint TING,RING;uint TEND,REND;void UART_INIT(); //声明函数uchar t,r;
//定义数据类型uchar but[16];
//数据存储数组/********************************************************************延时函数*********************************************************************/void delay(uchar t){uchar i,j;for(i=0;i&t;i++){for(j=13;j&0;j--);{ ;}
}}/********************************************************************定时器0初始化函数*********************************************************************/void TIMER0_INIT(void){TMOD=0X00;
//定时器T0设定AUXR|=0X80;
//辅助寄存器TL0=BAUD;
Word文档免费下载: (下载1-3页,共3页)
单片机 串口 定时器 外部中断简单示例_信息与通信_工程科技_专业资料。单片机... STC15F104E单片机之串口... 3页 7下载券 第6章单片机定时器串口中... 86...51单片机外部中断与定时器的实用_信息与通信_工程科技_专业资料。比较详细的...串行口中断 定时器 2 溢出 0BAH PX1 0B9H PT0 中断向量 H 000...STC15F104E的软件模拟串口程序文档_计算机硬件及网络_IT/计算机_专业资料。STC15F104E的软件模拟串口程序文档,用到一个定时器和一个外部中断,可以直接引用。...由于 STC15F104E 可以省去传统单片机的复位电路、外部... STC15F104E 没有串口,因而必须利用定时器模拟串口。...STC15F104E 首先关闭定时器中断,停止模拟串口的接收...单片机实验报告(二) 实验名称: 定时器及外部中断 姓学班时 名: 号: 级: 间: 张昊
通信 2 班 2013.11 南京理工大学紫金学院电光系 一、 实验...单片机定时器及外部中断实验_工学_高等教育_教育专区。南京理工大学紫金学院单片机实验报告 实验名称: 定时器及外部中断实验 姓学班时 名: 号: 级: 间: 高知明...51单片机介绍及头文件-STC15F104E_信息与通信_...唯一的不同就是没有硬 件的串口,需要用到定时器来...分别是 5 个外部中断, 个时钟输出, 3 一个复位...定时器及外部中断实验,南京理工大学紫金学院单片机实验报告 单片机实验报告 实验名称: 定时器及外部中断实验 姓学班时 名: 号: 级: 间: 通信 2013.11 南京...51单片机定时器计数器、外部、串行中断服务控制字(详版)_电子/电路_工程科技_专业资料。单片机外部中断控制字TMOD、定时器计数器中断控制字TCON、串行通信控制字...STC15F104E单片机之串口... 3页 7下载券 最新... 实现设备掉电时的数据存储合肥工业大学 颜浩 陆阳...并可用作微控制器的中断输入 × 连接 ‰ 引脚说明...}