程序流程框图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 流水灯流程框图:
N
Y
流水灯程序:
/***********************************************************
描述 : LED 流水灯的控制;
8个LED 会进行流水灯的演示;
***********************************************************/ #include
#define uchar unsigned char
temp 值赋给P1口延时 Temp 值左移一位 i=i+1
i=0 temp=oxfe 开始 i<8
#define uint unsigned int
sbit PP=P3^6 ;
/*********************************************************** * 名称 : Delay()
* 功能 : 延时,延时时间为 10ms * del
* 输入 : del
* 输出 : 无
***********************************************************/ void Delay(uint del)
{
uint i,j;
for(i=0; i for(j=0; j<1827; j++) ; } /*********************************************************** * 名称 : Main() * 功能 : 实现灯的闪烁 * 输入 : 无 * 输出 : 无 ***********************************************************/ void Main(void) { uchar i, temp; PP=0; while(1) { temp = 0xfe ; for(i=0; i<8; i++) { P1 = temp; //把值赋给P1口 Delay(10); //延时(10毫秒 * j)秒 temp = temp << 1; //值左移一位 temp = temp | 0x01; } } } 流水灯运行效果图: 2 四位数码管静态显示流程框图: 开始 初始化 P3=0 P1=tabley[X] 四位数码管静态显示程序: /*********************************************************** * 文件名 : 数码管显示.c * 描述 : 该程序为数码管静态显示程序。 ***********************************************************/ #include #define uchar unsigned char #define uint unsigned int //数码管的段码编码 uchar tabley[16] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; /*********************************************************** * 名称 : Main() * 功能 : 主函数 * 输入 : 无 * 输出 : 无 ***********************************************************/ void main() { uchar i = 0; P3=0; P1 =tabley[5]; while(1) { } } 四位数码管静态显示程序运行效果: 3 独立按键数码管加减流程框图: 开始 i=88 N KEY()==1 Y i=i-1 N KEY()==2 Y i=i+1 位1显示 位2显示 独立按键控制数码管显示加减程序: /*********************************************************** * 文件名:独立按键.c * 描述 : 数码管上最开始显示“88”。 按S1,数码管上的值减1. 按S3,数码管上的值加1. ***********************************************************/ #include #define uchar unsigned char #define uint unsigned int sbit KEY1 = P2^4; sbit KEY3 = P2^6; uint i=88; //数码管的段码编码 Ucha table[16] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; /*********************************************************** * 名称 : Delay_1ms() * 功能 : 延时子程序,延时时间为 1ms * x * 输入 : x (延时一毫秒的个数) * 输出 : 无 ***********************************************************/ void Delay_1ms(uint i) { uint x,j;