单片机学习笔记——串口与PC通信

“与PC机串口通信”程序设计说明

  1. 明确程序目的:
    实现单片机与PC进行通信,现在设置进行两位数码管(前面两位)来显示,只传递两位数
  2. 创建新项目
  3. 编写代码
    3.1变量定义
 /**********************
串口测试 型号:STC15F2K60S2 主频:11.0592MHz
************************/
#include<STC15F2K60S2.h>
#include<intrins.h>
/*---------宏定义---------*/
#define uchar unsigned char
#define uint unsigned int

#define cstFocs      11059200L  //晶振频率
#define cstBaud1     9600       //波特率
#define cstKeyMaxNum 100        //按键抖动次数
/*cstFocs是根据你IC外部实际使用的晶振来定义的,如果你外部挂的是11.0592M的晶振,那么就需要这样定义
#define cstFocs      11059200L
 cstBaud1 的定义则是根据你与电脑串口所通讯的具体的波特率,若使用9600的波特率,则定义为
#define cstBaud1     9600*/
/*---------引脚别名定义---------*/
sbit sbtKey1 = P3 ^ 2 ;             //按键1,启动发送
sbit sbtKey2 = P3 ^ 3 ;             //按键2,数字减少
sbit sbtKey3 = P1 ^ 7 ;             //按键3,数字增加
sbit sbtLedSel = P2 ^ 3;        

/*---------变量定义---------*/
uchar ucT100usTimes;    //中断次数(1次中断为100US)
uint uiKey1Cnt;            //按键1计数
uint uiKey2Cnt;            //按键2计数
uint uiKey3Cnt;            //按键3计数
uint uiKeyAllCnt;          //按键总的抖动次数
bit btT1msFlag;            //1ms的标志
bit btKey1Current;   /*key1当前的状态*/
bit btKey1Past;      /*key1前一个状态*/
bit btKey2Current;   /*key2当前的状态*/
bit btKey2Past;      /*key2前一个状态*/
bit btKey3Current;   /*key3当前的状态*/
bit btKey3Past;      /*key3前一个状态*/
/*收发显示数据相关*/     
bit btUart1SendBusy = 0 ;        //判断串口是否正在忙碌
uchar ucDateTmp;               //传输数据暂存
uchar ucDateDigState;         //用来判断显示前一位还是后一位
uchar arrSegSelect[] = {
   0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39
  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值