完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
IAR新唐N76E003串口调试(串口0发送,串口1接收)
本人菜鸟,入职让写串口程序,串口0发送数据,串口1接收数据。写了两周,才初步完成功能,欢迎大家指正错误,遇到了很多问题,大概都解决了…吧,话不多说,上代码! /* * @file name: UART * @decrption: 串口0的数据转发的串口1,注意发送时间间隔,缓存数组自定义大小再使用哦 * @author: 1027朵玫瑰花 * @date: 2020-4-30 * @history: */ #include "N76E003_iar.h" #include "Common.h" #include "Delay.h" #include "SFR_Macro.h" #include "Function_define.h" #define BUFFER_SIZE 16 #define UART0_BAUD 115200 #define UART1_BAUD 115200 UINT8 UART_BUFFER[BUFFER_SIZE]; UINT8 riflag; //判断标志位 UINT8 flag; //检验标志位 UINT8 buffer[40] = {0}; //缓存数组 UINT8 i = 0; void main (void) { P15_PushPull_Mode; // For I/O toggle display InitialUART0_Timer1(UART0_BAUD);//初始化 InitialUART1_Timer3(UART1_BAUD); printf_UART("lun"); //个人小标记 set_ES; //For interrupt enable set_EA; while (1) { if (flag != 0) { riflag = flag; Timer0_Delay1ms(100); //发送的一个行为结束 P15 = ~P15; //呼吸灯指示 while (riflag = flag) //开始转发 { for(i=0; i < flag; i++) { SBUF_1 = buffer; while (!TI_1); clr_TI_1; } i = 0; flag = 0; riflag = 0; } } } } #pragma vector = 0x23 __interrupt void SerialPort_ISR (void) { if (RI) { buffer = SBUF; clr_RI; i++; flag++; } } |
|
|
|
只有小组成员才能发言,加入小组>>
3309 浏览 9 评论
2988 浏览 16 评论
3490 浏览 1 评论
9050 浏览 16 评论
4084 浏览 18 评论
1169浏览 3评论
602浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
593浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2331浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 19:08 , Processed in 1.146525 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号