0% found this document useful (0 votes)
6 views

Bai Code

Uploaded by

22145240
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Bai Code

Uploaded by

22145240
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

Bài 6.12: Start Stop.

Đếm từ 1-99
#include <mega32.h>
#include <delay.h>
unsigned char ma7doan[10]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,
0x80, 0x90};
int number, chuc, dv, mode;
void delay(unsigned int x)
{
unsigned int y;
for(y = 0;y < x; y++)
{
if(PINB.0 == 0)
{
mode = 1;
}
if(PINB.1 == 0)
{
mode = 0;}
}
}
void main()
{
PORTC = 0xFF;
DDRC = 0xFF;
PORTD = 0xFF;
DDRD = 0xFF;
PORTB = 0xff;
DDRB = 0x00;
mode = 0;
chuc = 0;
dv = 0;
while (1)
{
PORTC = ma7doan[chuc];
PORTD = ma7doan[dv];
for(number=0;number<100;number++)
{
chuc = number / 10;
dv = number - chuc*10;
PORTC = ma7doan[chuc];
PORTD = ma7doan[dv];
delay_ms(200);
do
{
delay(5000);
}
while (mode == 1);
}
}
}
Bài 6.10: 2 nút nhấn ON OFF, ấn nút 8 led sáng/tắt
#include <mega16.h>

void main(void)
{
DDRC = 0XFF;
PORTC = 0XFF;
DDRD = 0X00;
PORTD = 0XFF;

while (1)
{
if(PIND.0==0)
{

PORTC.0=0;
PORTC.1=0;
PORTC.2=0;
PORTC.3=0;
PORTC.4=0;
PORTC.5=0;
PORTC.6=0;
PORTC.7=0;
while(PIND.0==0);
}
if(PIND.1==0)
{
PORTC.0=1;
PORTC.1=1;
PORTC.2=1;
PORTC.3=1;
PORTC.4=1;
PORTC.5=1;
PORTC.6=1;
PORTC.7=1;
while(PIND.1==0);
}

}
}
Bài 6.1: Led chop tat
#include <mega16.h>
#include <delay.h>
void main(void)
{
DDRC = 0XFF;
PORTC = 0XFF;

while (1)
{
PORTC = 0X00;
delay_ms(500);
PORTC = 0xff;
delay_ms(500);

}
Bai 6.2: led sáng tắt dần
#include <mega16.h>
#include <delay.h>
void main(void)
{
char i;
DDRC = 0XFF;
PORTC = 0X00;

while(1)
{
for ( i = 0; i < 8; i++ )
{
PORTC=( PORTC >> 1)+ 0x80;
delay_ms(100);
}
for ( i = 0; i < 8; i++)
{
PORTC=( PORTC >> 1);
delay_ms(100);}
}
}
Bài 6.5: led 7 đoạn đếm từ 0 -9
#include <mega32.h>
#include <delay.h>
unsigned char ma7doan[10] = { 0xC0, 0xF9 ,0xA4,0xB0,0x99, 0x92, 0x82, 0xF8,
0x80, 0x90 };
unsigned char i;

void main(void)
{
DDRC = 0xff;
PORTC = 0xff;

while (1)
{
for ( i =0; i < 10; i++)
{
PORTC = ma7doan[i] ;
delay_ms(200);
}
}
}
Bài 7.1: led 7 thanh hiển thị, dùng timer counter đếm

You might also like