完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
单片机的GPS模块的设计我经查询,应使用G28U7FTTL这个芯片,
对这`个芯片我的电路原理图及引脚分布图,根据它的指令码来编写程序,单片机的语言类似于c语言,代码如下: ** #include unsigned char Read_buf[40]; unsigned char Send_buf[40]; unsigned char Send_length=0; unsigned int Read_id=0; unsigned int Send_flag=0; unsigned int Send_id=0; /* 函数申明 */ void usart_Init();void usart2_Init(); void main() { usart_Init(); // 串口1初始化 usart2_Init(); // 串口2初始化 IE2=0X01; // 允许中断2中断 ES=1; // 允许中断1中断 EA=1; // 开启总中断 while(1); } void usart_Init() // 串口1初始化函数,产生9600bps波特率,可用串口助手自动完成 { PCON &= 0x7F; //波特率不倍速 SCON = 0x50; //8位数据,可变波特率 AUXR &= 0xFB; //独立波特率发生器时钟为Fosc/12,即12T BRT = 0xFD; //设定独立波特率发生器重装值 AUXR |= 0x01; //串口1选择独立波特率发生器为波特率发生器 AUXR |= 0x10; //启动独立波特率发生器 } void usart2_Init() // 串口2初始化函数,产生9600bps波特率,可用串口助手自动完成 { AUXR &= 0xF7; //波特率不倍速 S2CON = 0x50; //8位数据,可变波特率 AUXR &= 0xFB; //独立波特率发生器时钟为Fosc/12,即12T BRT = 0xFD; //设定独立波特率发生器重装值 AUXR |= 0x10; //启动独立波特率发生器 } void usart2() interrupt 8{ unsigned char x; if((S2CON & 0X01) == 1) // 接受中断标志位,表示开始接受数据 { S2CON=S2CON&0XFE; // 清串口2中的中断接受标志位 x=S2BUF; SBUF=x; // 发送数据给串口1 } } void usart() interrupt 4{ if(TI==1) // 发送数据 { TI=0; }} `` 目前我对这个模块的理解仅仅停留在这个阶段。接下来我会更加深入的研究。 |
|
|
|
只有小组成员才能发言,加入小组>>
2514 浏览 0 评论
1094浏览 2评论
705浏览 1评论
458浏览 0评论
200浏览 0评论
341浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 05:56 , Processed in 1.192773 second(s), Total 81, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号