Сторінка 7 із 8
Цифровая кость или генератор случайных чисел.
В этой статье я покажу, как создать генератор случайных чисел вывод их на 7-ми сегментный LED дисплей. И так устройство собрано на МК ATmega8. При нажатии кнопки МК считает дребезг контактов кнопки и выводит это число на LED. При последующем нажатии цикл повторяется с нова. Вот схема:

Мк тактируется от внутреннего RC-генератора на 1мгц.
Подключаем питание к МК +5V к 7-й ножке, а -5V к 8-й ножке.
Вот исходник для Code Vision AVR:
Code
/*****************************************************
Project: Chifrovay kost.
*****************************************************/
#include<mega8.h>
unsigned char clik;
void main(void)
{
//Port B initialization
PORTB=0×00;
DDRB=0×00;
//Port C initialization
PORTC=0xFF;
DDRC=0×00;
//Port D initialization
PORTD=0xFF;
DDRD=0xFF;
while(1){
switch(clik){ //выводим то число которое в переменной clik
case 0:{PORTD=0b11000000; break;} //0
case 1:{PORTD=0b11111001; break;} //1
case 2:{PORTD=0b10100100; break;} //2
case 3:{PORTD=0b10110000; break;} //3
case 4:{PORTD=0b10011001; break;} //4
case 5:{PORTD=0b10010010; break;} //5
case 6:{PORTD=0b10000010; break;} //6
case 7:{PORTD=0b11111000; break;} //7
case 8:{PORTD=0b10000000; break;} //8
case 9:{PORTD=0b10010000; break;} //9
}
if(!PINC.0){ //если нажата кнопка
clik++; //прибавляем 1 к переменной
if(clik>9)clik=0; //не даём переменной быть больше 9
}
};
}
|
|