- 31
- 0
- 约6.62万字
- 约 51页
- 2018-04-14 发布于浙江
- 举报
单片机数码管C程序
/*-----------------------------------------------
名称:单个共阳数码管静态显示
论坛:
编写:shifang
日期:2009.5
修改:无
内容:通过赋值给P1,让数码管显示特定的字符或者数字
------------------------------------------------*/
#includereg52.h //包含头文件,一般情况不需要改动,
//头文件包含特殊功能寄存器的定义
void main (void)
{
P1=0xc0; //二进制 为 1100 0000 参考数码管排列,
//可以得出0对应的段点亮,1对应的段熄灭,结果显示数字0
while(1)
{
}
}
/*-----------------------------------------------
名称:单个共阳数码管动态显示变化数字
论坛:
编写:shifang
日期:2009.5
修改:无
内容:通过循环赋值给P1,让数码管显示特定的字符或者数字
------------------------------------------------*/
#includereg52.h //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
unsigned char code dofly_table[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,};
// 显示数值表0-9
void Delay(unsigned int t); //函数声明
/*------------------------------------------------
主函数
------------------------------------------------*/
void main (void)
{
unsigned char i; //定义一个无符号字符型局部变量 i 取值范围 0~255
while (1) //主循环
{
for(i=0;i10;i++) //加入 for循环,表明for循环大括号中的程序循环执行10次
{
P1=dofly_table[i]; //循环调用表中的数值
Delay(60000); //延时,方便观看数字变化
}
//主循环中添加其他需要一直工作的程序
}
}/*------------------------------------------------
延时函数,含有输入参数 unsigned int t,无返回值
unsigned int 是定义无符号整形变量,其值的范围是
0~65535
------------------------------------------------*/
void Delay(unsigned int t)
{
while(--t);
}
/*-----------------------------------------------
名称:单个共阳数码管模拟水流
论坛:
编写:shifang
日期:2009.5
修改:无
内容:通过循环赋值给P1,让数码管显示特定流动样式
------------------------------------------------*/
#includereg52.h //包含头文件,一般情况不需要改动,
//头文件包含特殊功能寄存器的定义
void Delay(unsigned int t); //函数声明
/*------------------------------------------------
主函数
------------------------------------------------*/
void main (void)
{
unsigned char i; //定义一个无符号字符型局部变量 i 取值范围 0~255
while (1) //主循环
{
P1=0xfe;
for(i=0;i6;i++) //加入 for循环,表明for循环大括号中的程序循环执行6次
{
Delay(10000);
P1=1;
P1|=0x01;
}
原创力文档

文档评论(0)