关于串口上电发送0x00的解决方法
来源:互联网 发布:咕咚运动软件最新 编辑:程序博客网 时间:2024/05/21 13:56
我今天运行公司主板上的程序时发现它的串口总是在板子刚上电的时候向外发送0x00. 主板上的芯片是avr的at90usb1287. 我前几天写的串口程序烧到主板上却没有这个问题。 同样的板子,同样的串口初始化程序!!所以我果断认为不是初始化程序的问题,当然 也不是硬件的问题!! 问题自然还是出在程序身上!!!仔细比较了两个程序,发现有一个不同点!! 那就是公司主板里的程序在一开始初始化了TX的复用IO引脚,而我的却没有!!!
我在示波器里看到,公司的程序初始化TX的IO复用口以后,TX线为低电平,初始化串口以后TX又变为高。 低为start bit, 高为stop bit,另一端的串口误认为这是一次串口传输,又由于TX一直保持低到串口初始化,所以数据被识别为0x00.
解决方案就是在TX的IO复用口以后,立即初始化串口,中间间隔时间极短,形不成一次串口数据传输!!!!也就是说和TX复用的引脚要和串口在一起初始化,中间隔任何程序!!!!
大多数人都是在程序中先初始化各种IO口,然后再初始化中断服务,串口之类的。这之间往往隔了一些代码。
- 关于串口上电发送0x00的解决方法
- USART串口发送0X00问题解决
- 关于(十六进制值 0x00)是无效的字符
- stm32L151串口中断假如发送一个字节0x36,串口中断总是接收到0x00,连续点击几次发送,才能接收到0x36
- 关于串口发送数据的问题
- STM32关于串口发送缓冲的问题
- STM32初始化USART后发送了一个0x00?why???
- linux C语言 串口 上层发送0x0A,底层却发送了0x0D 0x0A两个字节的解决方法
- STM32 Usart 上电发送一个无效字符的问题
- 关于串口发送float数据
- STM---串口发送数据,第一个数据无法发送的解决方法
- 串口的发送
- stm8单片机串口应用笔记(一):接收端丢失0x00
- 关于服务器上发送邮件程序发送失败的解决方案
- 0x00 -----0xFF
- 0x00和'0'
- 0x00翻转字符串
- 逆向工程 0x00
- 线程同步
- linux下安装nginx
- JSON(1):如何将符合json语法的字符串转换为一个JS对象
- static{}(静态代码块)与{}(非静态代码块)的异同点
- Configruation对象的configure()方法----Hibernate相关
- 关于串口上电发送0x00的解决方法
- Forms身份认证
- [leetCode] Integer to Roman
- USING GIT AND GITHUB TO MANAGE YOUR DOTFILES
- 各版本IIS下ASP.net请求处理过程分析
- Closure, Memory Leak and Memory Diagnose
- 写一个与dup2()功能相同的函数
- IO(File、递归、Properties)
- 乐视网TV版为何能成付费视频用户第一选择?