cac pac giup e em co chuong trinh led matric 8x8 nhung ko xuat dc chu ra led matrix cac bac giup em voi
//#include "G:\Quang bao\ledmatrix.h"
#include <16f877.h>
#use delay(clock=20000000)
#byte port_B =0x06
#byte port_C =0x07
#bit data = 0x06.1
#bit clk = 0x06.0
#bit latch = 0x06.2
int8 buff_disp[80]; //Bo nho dem cho man hinh LED
typedef struct {
int8 b[5]; /* Data */
}T_font;
const T_font font[]={
//******************BANG MA ASCII****************
//ascii_code:
0xFF,0xFF,0xFF,0xFF,0xFF,//SPACE 0
0xFF,0xFF,0xA0,0xFF,0xFF,//! 1
0xFF,0xFF,0xF8,0xF4,0xFF,//' 2
0xEB,0x80,0xEB,0x80,0xEB,//# 3
0xDB,0xD5,0x80,0xD5,0xED,//$ 4
0xD8,0xEA,0x94,0xAB,0x8D,//% 5
0xC9,0xB6,0xA9,0xDF,0xAF,//& 6
0xFF,0xFF,0xF8,0xF4,0xFF,//' 7
0xFF,0xE3,0xDD,0xBE,0xFF,//( 8
0xFF,0xBE,0xDD,0xE3,0xFF,//) 9
0xD5,0xE3,0x80,0xE3,0xD5,//* 10
0xF7,0xF7,0xC1,0xF7,0xF7,//+ 11
0xFF,0xA7,0xC7,0xFF,0xFF,//, 12
0xF7,0xF7,0xF7,0xF7,0xF7,//- 13
0xFF,0x9F,0x9F,0xFF,0xFF,//x 14
0xFF,0xC9,0xC9,0xFF,0xFF,/// 15
0xC1,0xAE,0xB6,0xBA,0xC1,//0 16
0xFF,0xBD,0x80,0xBF,0xFF,//1 17
0x8D,0xB6,0xB6,0xB6,0xB9,//2 18
0xDD,0xBE,0xB6,0xB6,0xC9,//3 19
0xE7,0xEB,0xED,0x80,0xEF,//4 20
0xD8,0xBA,0xBA,0xBA,0xC6,//5 21
0xC3,0xB5,0xB6,0xB6,0xCF,//6 22
0xFE,0x8E,0xF6,0xFA,0xFC,//7 23
0xC9,0xB6,0xB6,0xB6,0xC9,//8 24
0xF9,0xB6,0xBE,0xD6,0xE1,//9 25
0xFF,0xC9,0xC9,0xFF,0xFF,//: 26
0xFF,0xA4,0xC4,0xFF,0xFF,//// 27
0xF7,0xEB,0xDD,0xBE,0xFF,//< 28
0xEB,0xEB,0xEB,0xEB,0xEB,//= 29
0xFF,0xBE,0xDD,0xEB,0xF7,//> 30
0xFD,0xFE,0xAE,0xF6,0xF9,//? 31
0xCD,0xB6,0x8E,0xBE,0xC1,//@ 32
0x83,0xF5,0xF6,0xF5,0x83,//A 33
0xBE,0x80,0xB6,0xB6,0xC9,//B 34
0xC1,0xBE,0xBE,0xBE,0xDD,//C 35
0xBE,0x80,0xBE,0xBE,0xC1,//D 36
0x80,0xB6,0xB6,0xB6,0xBE,//E 37
0x80,0xF6,0xF6,0xFE,0xFE,//F 38
0xC1,0xBE,0xB6,0xB6,0xC5,//G 39
0x80,0xF7,0xF7,0xF7,0x80,//H 40
0xFF,0xBE,0x80,0xBE,0xFF,//I 41
0xDF,0xBF,0xBE,0xC0,0xFE,//J 42
0x80,0xF7,0xEB,0xDD,0xBE,//K 43
0x80,0xBF,0xBF,0xBF,0xFF,//L 44
0x80,0xFD,0xF3,0xFD,0x80,//M 45
0x80,0xFD,0xFB,0xF7,0x80,//N 46
0xC1,0xBE,0xBE,0xBE,0xC1,//O 47
0x80,0xF6,0xF6,0xF6,0xF9,//P 48
0xC1,0xBE,0xAE,0xDE,0xA1,//Q 49
0x80,0xF6,0xE6,0xD6,0xB9,//R 50
0xD9,0xB6,0xB6,0xB6,0xCD,//S 51
};
//Phan tu hai
const T_font font2[]={
0xFE,0xFE,0x80,0xFE,0xFE,//T 52
0xC0,0xBF,0xBF,0xBF,0xC0,//U 53
0xE0,0xDF,0xBF,0xDF,0xE0,//V 54
0xC0,0xBF,0xCF,0xBF,0xC0,//W 55
0x9C,0xEB,0xF7,0xEB,0x9C,//X 56
0xFC,0xFB,0x87,0xFB,0xFC,//Y89 24 57
0x9E,0xAE,0xB6,0xBA,0xBC,//Z90 25 58
0xFF,0x80,0xBE,0xBE,0xFF,//[ 59
0xFD,0xFB,0xF7,0xEF,0xDF,//\ 60
0xFF,0xBE,0xBE,0x80,0xFF,//] 61
0xFB,0xE1,0xE0,0xE1,0xFB,//^ 62
0x7F,0x7F,0x7F,0x7F,0x7F,//_ 63
0xFF,0xFF,0xF8,0xF4,0xFF,//' 64
0xDF,0xAB,0xAB,0xAB,0xC7,//a 65
0x80,0xC7,0xBB,0xBB,0xC7,//b
0xFF,0xC7,0xBB,0xBB,0xBB,//c
0xC7,0xBB,0xBB,0xC7,0x80,//d
0xC7,0xAB,0xAB,0xAB,0xF7,//e 69
0xF7,0x81,0xF6,0xF6,0xFD,//f
0xF7,0xAB,0xAB,0xAB,0xC3,//g 71
0x80,0xF7,0xFB,0xFB,0x87,//h 72
0xFF,0xBB,0x82,0xBF,0xFF,//i 73
0xDF,0xBF,0xBB,0xC2,0xFF,//j 74
0xFF,0x80,0xEF,0xD7,0xBB,//k 75
0xFF,0xBE,0x80,0xBF,0xFF,//l 76
0x83,0xFB,0x87,0xFB,0x87,//m 77
0x83,0xF7,0xFB,0xFB,0x87,//n 78
0xC7,0xBB,0xBB,0xBB,0xC7,//o 79
0x83,0xEB,0xEB,0xEB,0xF7,//p 80
0xF7,0xEB,0xEB,0xEB,0x83,//q 81
0x83,0xF7,0xFB,0xFB,0xF7,//r 82
0xB7,0xAB,0xAB,0xAB,0xDB,//s 83
0xFF,0xFB,0xC0,0xBB,0xBB,//t 84
0xC3,0xBF,0xBF,0xDF,0x83,//u 85
0xE3,0xDF,0xBF,0xDF,0xE3,//v 86
0xC3,0xBF,0xCF,0xBF,0xC3,//w 87
0xBB,0xD7,0xEF,0xD7,0xBB,//x 88
0xF3,0xAF,0xAF,0xAF,0xC3,//y 89
0xBB,0x9B,0xAB,0xB3,0xBB,//z 90
0xFB,0xE1,0xE0,0xE1,0xFB,//^ 92
0xE3,0xE3,0xC1,0xE3,0xF7,//->93
0xF7,0xE3,0xC1,0xE3,0xE3,//<-94
0xEF,0xC3,0x83,0xC3,0xEF,//95
0xFF,0xFF,0xFF,0xFF,0xFF//BLANK CHAR 96
};
// End of code table
//---------Chuong trinh con hien thi--------------------------------------------
void display(){
int8 i,time;
set_tris_B(0x00); // thiet lap B va C deu la dau ra
set_tris_C(0x00);
data=1; latch=1;clk=1;clk=0;latch=0; // bat dau dich cot
time=0;
for(time=0;time<1;time++)
{
for(i=79;i>0;i--)
{
port_C=buff_disp[i]; // xuat ma
delay_ms(100); // tao tre
port_C=0xff; // tat cot
clk=1;clk=0; // tao xung clock de dich
latch=1;latch=0;
port_C=char const
}
data=0; // Reset ghi dich
}
}
//------------Ket thuc chuong trinh con hien thi--------------------------------
//------------Chuong trinh con lay ma ASCII tu phan thu 1 cua font
void copy_2_ram1(int8 index_char)
{
int8 i,j;
for (j=0;j<=5;j++)
{ // Dich RAM
for (i=80;i>0;i--)
buff_disp[i]= buff_disp[i-1]; // Dich RAM sang trai
buff_disp[0]=font[index_char].b[j]; // Luu ma ascii vao RAM
display(); // Goi hien thi
}
buff_disp[0]=0xff;
}
//------------Chuong trinh con lay ma ASCII tu phan thu 2 cua font
//========Copy to Ram 2===================
void copy_2_ram2(int8 index_char) {
int8 i,j;
for (j=0;j<=5;j++)
{
for (i=80;i>0;i--) // Dich RAM
buff_disp[i]= buff_disp[i-1]; //Dich RAM sang trai
buff_disp[0]=font2[index_char].b[j]; //Luu ma ascii vao RAM
display(); // Goi hien thi
}
buff_disp[0]=0xff; // Them mot khoang trang giua hai ky tu
}
//---------------Ket thuc chuong trinh con lay ma ASCII tu phan thu 2 cuar font
void main()
{
int8 count,i,j;
int8 const max_char=56;
// Khai bao chuoi ky tu hien thi tai day
char const a[43]= {"DIEP NGOC NHI K37C DIEN TU CONG NGHIEP "};// Ky tu NULL duco them
// Khoi tao chuong trinh chinh
for(i=0;i<56;++i)
write_eeprom(i,a[i]); //luu chuoi ky tu can hien thi vap Rom
write_eeprom(0xff,max_char); // Luu so ky tu toi da vao ROM
// ------------------------------
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(FALSE);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
//-------------------------------
while(1){
for (i=0;i<=80;i++) // Clear RAM of buff_disp
buff_disp[i]=0xff;
for (i=0;i<=max_char;i++) // Begin of text
{
j=read_eeprom(i)-32; //Lay gia tri ASCII cua ky tu
if (j<=51)
copy_2_ram1(j);
else
{
j=j-52;
copy_2_ram2(j);
}
}
}
}
cac bac giup e gui den dia chi ngocnhipy@gmail.com