14860|8

241

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

两个单片机菜鸟问题,求高手指点 [复制链接]

单片机为PIC单片机

1。串口中断后,必须把数据读走吗?如果不读走就会一直进入中断,这是什么原因(中断标志已清零)

2。AD转换,单片机只有一个10位的AD,但是支持多个通道,AD每次转换之前都得配置OPEN一下吗,能连续转换吗?

连续转换是不是必须开AD中断?

此帖出自模拟电子论坛

最新回复

你是说PC的串口死锁了?如何判断的?PC串口硬件死锁只出现于带电插拔的闩扣效应,除此不会,软件则有可能,特别是使用兼容性不良的USB转串口桥时,原生串口绝对不会。 如果是你的MCU系统“死锁”,类似的原因不是硬件而是你的软件结构不合理,来不及处理串口数据而已,需优化你的程序结构。  详情 回复 发表于 2012-7-5 16:21
点赞 关注

回复
举报

1万

帖子

16

TA的资源

版主

沙发
 
1、先关闭中断,再读读完再开开中断 2、每次都OPEN,连续的有,但PIC好像没
此帖出自模拟电子论坛

点评

每次中断后都要关闭中断?清零标志位不行吗?  详情 回复 发表于 2012-7-3 12:46
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 

回复

241

帖子

0

TA的资源

一粒金砂(高级)

板凳
 

回复 沙发 ddllxxrr 的帖子

每次中断后都要关闭中断?清零标志位不行吗?
此帖出自模拟电子论坛
 
 
 
 

回复

308

帖子

0

TA的资源

纯净的硅(中级)

4
 
每次中断后都要关闭中断是为了不被其他中断打断
此帖出自模拟电子论坛
 
 
 
 

回复

1万

帖子

139

TA的资源

版主

5
 
如果串口只有一个字节,那么可以不立刻取走,如果串口数据超过一个字节,那么必须在下个字节到来前取走,否则会丢失数据。串口中断标志清除后本次中断不会再次出现,除非下一个字节到来。
AD复用可用多路模拟开关实现,切换通道后每次要重新启动一次AD过程。
此帖出自模拟电子论坛

点评

谢谢版主解答,这里补充个问题,我有串口调试助手向单片机发数据,串口设为异步、连续发送、接收中断开启,波特率设为9600时,一次发送超过一定数量的字节后,串口就死了,不在接收了,有时候一次发20多个死,有时候  详情 回复 发表于 2012-7-4 22:46
 
 
 
 

回复

241

帖子

0

TA的资源

一粒金砂(高级)

6
 

回复 5楼 chunyang 的帖子

谢谢版主解答,这里补充个问题,我有串口调试助手向单片机发数据,串口设为异步、连续发送、接收中断开启,波特率设为9600时,一次发送超过一定数量的字节后,串口就死了,不在接收了,有时候一次发20多个死,有时候发30多个死,而且我读状态寄存器发送串口溢出了。不知道是怎么回事,今天把波特率调成4800时,能发送了,再调成2400时又会溢出,我看DATASHEET上说溢出可以通过清零CREN位 清零。但是我加了这步判断后,串口接到的数据到达一定数量后就乱了。求指导啊~~~~
此帖出自模拟电子论坛
 
 
 
 

回复

1万

帖子

139

TA的资源

版主

7
 
你是说PC的串口死锁了?如何判断的?PC串口硬件死锁只出现于带电插拔的闩扣效应,除此不会,软件则有可能,特别是使用兼容性不良的USB转串口桥时,原生串口绝对不会。
如果是你的MCU系统“死锁”,类似的原因不是硬件而是你的软件结构不合理,来不及处理串口数据而已,需优化你的程序结构。
此帖出自模拟电子论坛

点评

再来麻烦下楼主,现在串口收发已经可以了,但是遇到个新问题,我的PIC单片机还用到个功能,就是产生一个PWM波,频率是10K,我用到了Timer2,波形可以产生,但是一旦开启PWM,我的串口又不能收发数据了,关掉PWM,串  详情 回复 发表于 2012-7-8 22:47
多谢版主,不是PC的串口,我用它自收自发时都好用的,应该是MCU的串口死了,我再看下程序  详情 回复 发表于 2012-7-5 22:43
 
 
 
 

回复

241

帖子

0

TA的资源

一粒金砂(高级)

8
 

回复 7楼 chunyang 的帖子

多谢版主,不是PC的串口,我用它自收自发时都好用的,应该是MCU的串口死了,我再看下程序
此帖出自模拟电子论坛
 
 
 
 

回复

241

帖子

0

TA的资源

一粒金砂(高级)

9
 

回复 7楼 chunyang 的帖子

再来麻烦下楼主,现在串口收发已经可以了,但是遇到个新问题,我的PIC单片机还用到个功能,就是产生一个PWM波,频率是10K,我用到了Timer2,波形可以产生,但是一旦开启PWM,我的串口又不能收发数据了,关掉PWM,串口又正常了,不知道它们为什么有冲突,求指导
此帖出自模拟电子论坛
 
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表