基于单片机的重要C语言程序.docx
- 文档编号:3567411
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:15
- 大小:16.05KB
基于单片机的重要C语言程序.docx
《基于单片机的重要C语言程序.docx》由会员分享,可在线阅读,更多相关《基于单片机的重要C语言程序.docx(15页珍藏版)》请在冰豆网上搜索。
基于单片机的重要C语言程序
供应数码管用cc数码管
数码管
显示753
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidmain()
{
//intled,i;
while
(1)
{
P1=0xfe;
P0=0x4f;
delayms(1000);
P1=0xfd;
P0=0x6d;
delayms(100);
P1=0xfb;
P0=0x07;
delayms(100);
}
}
显示hello
#include"AT89x52.h"
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidmain()
{
//intled,i;
while
(1)
{
P1=0xfe;
P0=0x3f;
delayms(10);
P1=0xfd;
P0=0x38;
delayms(10);
P1=0xfb;
P0=0x38;
delayms(10);
P1=0xf7;
P0=0x79;
delayms(10);
P1=0xef;
P0=0x76;
delayms(10);
}
}
Xianshiuzi
#include"AT89x52.h"
charcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x7f,0x6f};
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidshuplay(intshu)
{
P1=0xfe;//11111110
P0=table[shu%10];//111111
delayms(5);
P1=0xfd;//11111101
P0=table[shu%100/10];//111000
delayms(5);
P1=0xfb;//11110111
P0=table[shu/100];//111000
delayms(5);
}
voidmain(){
intled=1000,i;
while
(1){
for(i=20;i>0;i--)
shuplay(led);
led=led+1;
}
}
数码管显示0~1000
#include"AT89x52.h"
charcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x7f,0x6f};
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidshuplay(intshu)
{
P1=0xfe;//11111110
P0=table[shu%10];//111111
delayms(5);
P1=0xfd;//11111101
P0=table[shu%100/10]+0*80;//111000
delayms(5);
P1=0xfb;//11110111
P0=table[shu/100];//111000
delayms(5);
}
voidmain(){
intled,i;
while
(1){
for(i=20;i>0;i--)
shuplay(led);
led=led+1;
}
}
数码管数字加文字
#include"AT89x52.h"
charcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x7f,0x6f};
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidHELLO()
{
P1=0xfe;
P0=0x3f;
delayms(100);
P1=0xfd;
P0=0x38;
delayms(100);
P1=0xfb;
P0=0x38;
delayms(100);
P1=0xf7;
P0=0x79;
delayms(100);
P1=0xef;
P0=0x76;
delayms(100);
}
voidshuplay(intshu)
{
P1=0xfe;//11111110
P0=table[shu%10];//111111
delayms(10);
P1=0xfd;//11111101
P0=table[shu%100/10]+0*80;//111000
delayms(10);
P1=0xfb;//11110111
P0=table[shu/100];//111000
delayms(10);
}
voidmain(){
intled,i;
while(123){
for(i=20;i>0;i--)
shuplay(led);
led=led+1;
HELLO();
}
}
按键
#include"AT89x52.h"
sbitkeyA=P2^0;
sbitkeyB=P2^1;
voiddelayms(intms){
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidmain(){
intmyKey;
while
(1){
myKey=0;
if(keyA==0);{
delayms(5);
if(keyA==0)
myKey=1;
}
if(keyB==0);{
delayms(5);
if(keyB==0)
myKey=2;
}
P3=myKey;
}
}
Jianpan
#include"reg52.h"
#defineucharunsignedchar
#defineunitunsignedint
charcodetable[19]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,
0x71,0x73,0xc3,0x00};
voiddelay(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=100;i>0;i--);
}
voiddisplay(charshu)
{
P1=0xf0;
P0=table[shu];
}
ucharkey_scan(void)
{
ucharkey_code;
ucharkey_value;
ucharrow=0;
ucharline=0;
P2=0x0f;
if((P2&0x0f)!
=0x0f)
{
delay(10);
if((P2&0x0f)!
=0x0f)
{
key_code=P2&0x0f;
switch(key_code)
{
case0x0e:
row=0;break;
case0x0d:
row=1;break;
case0x0b:
row=2;break;
case0x07:
row=3;break;
default:
;
}
P2=0xf0;
key_code=P2&0xf0;
switch(key_code)
{
case0xe0:
line=0;break;
case0xd0:
line=1;break;
case0xb0:
line=2;break;
case0x70:
line=3;break;
default:
;
}
key_value=row*4+line;
}
while((P2&0x0f)!
=0x0f)
return(key_value);
}
return(key_value);
}
voidmain(void)
{
intmykey;
while
(1)
{mykey=key_scan();
display(mykey);
}
}
Timer
#include"AT89x52.h"
intmiao;
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidmain()
{
TMOD=0x01;
ET0=1;
TH0=(65535-46083)/256;
TL0=(65535-46083)%256;
TR0=1;
EA=1;
while
(1)
{
P3=~miao;
}
}
voidtimer0()interrupt1
{
intcount;
count++;
if(count==20)
{
count=0;
miao++;
}
TH0=19452/256;
TL0=19452%256;
}
独立键盘
#include"AT89x52.h"
sbitKeyA=P2^4;
sbitKeyB=P2^5;
sbitKeyC=P2^6;
charcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidshuplay(intshu)
{
P1=0xfe;
P0=table[shu%10];
delayms(4);
P1=0xfd;
P0=table[shu/10];
delayms(4);
}
charKeyscan()
{
charkey;
if(KeyA==0){
delayms(5);
if(KeyA==0)
key=1;
}
if(KeyB==0){
delayms(5);
if(KeyB==0)
key=2;
}
if(KeyC==0){
delayms(5);
if(KeyC==0)
key=3;
}
returnkey;
}
voidmain()
{
intmykey;
while
(2)
{
mykey=Keyscan();
shuplay(mykey);
}
}
用数码管控制灯
#include"AT89x52.h"
charcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x7f,0x6f};
intmiao=100;
voiddelayms(intms)
{
inti;
for(ms;ms>0;ms--)
for(i=120;i>0;i--);
}
voidtimeplay(intmiao)
{
P1=0xfe;//11111110
P0=table[miao%10];//111111
delayms(10);
P1=0xfd;//11111101
P0=table[miao/10%10];//111000
delayms(10);
P1=0xfb;//11110111
P0=table[miao/100];//111000
delayms(10);
}
voidmain()
{
TMOD=0x01;
ET0=1;
TH0=(65535-46083)/256;
TL0=(65535-46083)%256;
TR0=1;
EA=1;
while
(1)
{
P3=~miao;
timeplay(miao);
if(miao==80)
{P3=0xff;
delayms(100);
P3=0x00;
delayms(100);
}
}
}
voidtimer0()interrupt1
{
intcount;
count++;
if(count==20)
{
count=0;
miao++;
}
TH0=19452/256;
TL0=19452%256;
}
小车
#include"AT89x52.h"
sbitIN1=P3^0;
sbitIN2=P3^1;
sbitIN3=P3^2;
sbitIN4=P3^3;
sbitENA=P3^4;
sbitENB=P3^5;
voiddelayms(intms){
inti;
for(ms;ms>0;ms--)
for(i=150;i>0;i--);
}
voidcarleft(){
IN1=1;IN2=0;
IN3=1;IN4=0;
ENA=1;ENB=1;
}
voidcaright(){
IN1=0;IN2=1;
IN3=0;IN4=1;
ENA=1;ENB=1;
}
voidcarforward(){
IN1=1;IN2=0;
IN3=1;IN4=0;
ENA=1;ENB=1;
}
voidmain(){
while
(1){
carleft();
delayms(500);
caright();
delayms(1000);
carforward();
delayms(1000);
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 重要 语言 程序