永发信息网

mega8 的RS485通讯程序乱码

答案:1  悬赏:80  手机版
解决时间 2021-05-14 04:06

#include "iom8v.h"


void uart_init(void) {
 UCSRA = 0x02;       

 UCSRB = 0x18;     

  UCSRC = 0x06;     

 UBRRH = 0x00;
 UBRRL = 0x19;         
 DDRD |= (1 << PD2);     

  PORTD &= ~(1 << PD2);  

 }


void uart_transmit(unsigned char i)

 {

 PORTD |= (1 << PD2);      

 UDR = i;     

 while (!(UCSRA & (1<<TXC)));    

 UCSRA |= (1 << TXC);    

 

}


unsigned char uart_receive( void )
{
delayms();
    PORTD &= ~(1 << PD2);  
 while (!(UCSRA & (1<<RXC)));    

 return UDR;      

}

void delayms(void)      

{
   unsigned int i=0;
   for (i=0;i<20;i++)
 {
  unsigned int i;
   for (i=0;i<1140;i++);

 }
}



void io_init(void) {

 
 DDRB = 0xFF;     

 PORTB = 0xFF;     

 DDRC = 0x00;      

 PORTC = 0xFF;
 DDRD = 0xE0;
 PORTD = 0x1F;
}


void main(void) {

 unsigned int temp = 0;

 io_init();
 uart_init();
 
 while (1) {
  temp = uart_receive();    
  PORTD = ~temp;    

  uart_transmit(temp); 
  }
}

最佳答案
可以想到你是刚刚接触单片机的兄弟吧

遇到你这样的问题,一般我是这样做的,用ch375或者cp2103或pd12,具体的资料你查查就好了 ,最好做的是cp2103吧 直接接串口 然后在电脑上按个软件,就可以模拟一个串口出来。
效果不错的
在某公司的某个avr jtage 就是用mega16 和cp2103做的

型号 我记不得了 你仔细查查
我的qq号50174447
我的群:87159423
欢迎交流
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
身体太虚弱了,浑身乏力,想跑两步都难,吃了很
联想3000 G450A-TSI(H)自带蓝牙吗?
体检要注意哪些事项,做健康体检前要注意些什
南乐县南乐青华实验学校地址在哪,我要去那里
谁帮我给广告传媒公司起个名字,要有含义?
现在 俄还能为他做什么
我注册的拍拍个人识名认证没有成功。但是已经
大圩古镇有什么好玩的,沙湾古镇的历史文化
浏阳市街电(皇家足道燎原南路)这个地址在什么
南京大学有机化学考研考什么啊
海鸥超市桂康店在什么地方啊,我要过去处理事
求天下奇闻壮观,以知天地之广大!的意思
2010商洛学院何时发放通知书
我叫严逸 1993年阴历3月23出生上午9点45分属
谷城县百果园果蔬超市(粉阳路店)这个地址怎么
推荐资讯
哪个地方哭最好
从石羊车站到团结镇坐多少路公交车?
为什么 做人 会这么 失败?
涟源市爱婴家园我想知道这个在什么地方
失眠睡不着该怎末办!!!!
身份证照片不合怎么办
为什么寻仙里双击下划线走不动啊
香坊区鑫城堡幼儿园哪位知道具体地址啊
答谢家人对我生日祝福,祝儿子19岁生日快乐的
大家说一下现在干什么行业比较好、挣钱?
熊GG魅力手册如何获得
天龙八部2代金卡送的元宝是绑定的还是非绑定
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?