![]() |
![]() |
#16 |
Nhập môn đệ tử
Tham gia ngày: Oct 2009
Bài gửi: 4
: |
mach quang báo giao tiếp với may tinh
em cũng đang làm đề tài về quang báo giao tiếp được với máy tính qua RS232, em muốn hỏi các sư huynh một chút là:
1. khi muốn giao tiếp được với máy tính thì ở pic( viết bằng CCS) mình tạo mã led như thế nào thì trên PC(viết bằng VB), mình cũng phải chuyển đổi sang mã Led y chang vậy phải không? tai em tham khảo một đoan code, thấy trên pic mã led khác với PC, em nghĩ nếu như vậy làm sao truyền được. 2. em sử dung con SRAM 6264, nối với pic qua PortB, vậy ngõ ra của 6264 mình nối vào đâu ah,tra datasheet em chỉ hiểu đc bảng trạng thái của nó thôi, còn mấy cái kia khó hiểu quá, ai biêt về con này chỉ cho em với nha. 3.ở cột em sử dung con IC 6B595(con này tích hợp từ 74595 và 2803), o hàng em đưa thẳng data qua PortD đc không, hay em phải đưa qua con IC74573 và TIP 127(2 transistor mắc Darlington), nó có tác dụng gì trong trường hợp này ah? 4.trước khi nối pic vớii may tính, Mình có thể lập trình cho nó tự hiển thị chữ trước, sau đó nếu giao tiép với may tính mình dùng ngắt đc không nhỉ? mong mọi người chỉ giáo cho em với nha, em mới tìm hiểu nên cung còn nhiều điều chưa hiểu rõ lắm. |
![]() |
![]() |
![]() |
#17 |
Đệ tử 2 túi
Tham gia ngày: May 2009
Bài gửi: 42
: |
theo mình được bieetss, thì nếu 2 con 595 nối theo cách chân 9 của con trước nối vào chân 14 của con sau thì sau khi có 8 xung nhịp đầu, cứ mỗi xung nhịp tiếp theo thì 1 bit từ con đầu sẽ chuyển sang con 595 thứ 2! với cách hiểu như vậy thì mình vẫn chưa thể ghép nối 2 con 595 với nhay mà vẫn sử dụng độc lập, vì giả sử chữ A chẳng hạn, bạn cần có 8 số liệu 8 bit cho 8 hàng, khi bạn gửi 8 bit đầu ra con 595 đầu tiên, con thứ 2 sẽ không có gì, gửi tiếp 8 bit tiếp theo,gửi xong thì 8 bít đầu sẽ chuyển sang con thứ 2, cứ như vậy thì bảng led đầu sẽ hiển thị chữ A, còn bảng thứ 2 là chữ A cụt đầu
![]() chúc vui! |
![]() |
![]() |
![]() |
#18 |
Đệ tử 1 túi
Tham gia ngày: May 2008
Bài gửi: 13
: |
các bác ơi có tài liệu nào về con 74hc595 khong cho mình xin với mình đang vướng con đó không bít nó hoạt động theo nguyên tắc nào để ráp mạch cả mong các bác chỉ giáo dùm
|
![]() |
![]() |
![]() |
#19 |
Nhập môn đệ tử
|
595 la giao tiep noi tiep spi. dung thu vien spi tong trinh bien dich la ok. chuc thanh cong
__________________
minhhv |
![]() |
![]() |
![]() |
#20 |
Đệ tử 3 túi
Tham gia ngày: Jun 2010
Bài gửi: 57
: |
sao bạn không tìm trong datasheet nhỉ?chỉ cần vào google thì nó ra hàng đống đấy.
|
![]() |
![]() |
![]() |
#21 |
Nhập môn đệ tử
Tham gia ngày: May 2010
Bài gửi: 10
: |
![]() chào các bác! em là dân đang tập tểnh vào lạp trình pic16f877a. em đang có dự định lập trình led ma trận ghép nối 4 bản led (sử dụng loại 8x8) sửdụng ic 74hc595 để mở rộng vậy các bác có thể cho em một code ví dụ được không ạ
|
![]() |
![]() |
![]() |
#22 |
Nhập môn đệ tử
Tham gia ngày: May 2010
Bài gửi: 7
: |
matrix LED
chào cả nhà
em đang làm mạch matrix LED dùng HC74595 để xuất dữ liệu và quét cột. nhưng không hiểu sao khi chạy hết dòng ký tự thì bị nhiễu ở cuối và chạy không đều. xin cả nhà chỉ giáo thay đổi nội dung bởi: huankhi, 11-08-2010 lúc 10:18 PM. |
![]() |
![]() |
![]() |
#23 |
Nhập môn đệ tử
Tham gia ngày: Sep 2010
Bài gửi: 3
: |
led ma trận
bạn quet led nhu thế về cơ bản là sai bét rồ inhu thế là bạn dang quét song song các con led chứ không phải là quét led ma trận
bạn coi lại lí thuyết trong cunghocavr.com di đây là việc đòi hỏi bạn phải tự làm chứ hỏi người khác không ai trả lời đâu vì họ cũng mất công nghiên cứu nhiều lắm chứ chúc may mắn |
![]() |
![]() |
![]() |
#24 |
Nhập môn đệ tử
Tham gia ngày: Sep 2010
Bài gửi: 3
: |
hỏi thế gian này led là chi
mà sao thấy nhiều người phải khổ |
![]() |
![]() |
![]() |
#25 |
Nhập môn đệ tử
Tham gia ngày: Jul 2012
Bài gửi: 1
: |
co bac nao gjoj ve c gjup e voj e co chuong trinh led matrix 8x8 xem ho em xem tai sao ko xuat duoc ma de hien thi chu. e dung 1 ic74hc595 1led ma tran bac nao sua dc gui dum e qua dia chi ngocnhipy@gmail.com
#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[59]= {"HTL Truong Cao Dang Nghe Hai Duong. Khoa Dien - Dien tu "};// 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); } } } } |
![]() |
![]() |
![]() |
#26 |
Nhập môn đệ tử
Tham gia ngày: Feb 2014
Bài gửi: 3
: |
pác nào cho em xin 1 đoạn code mẫu về nap vào 595 này với ạ, e nghĩ hoài mà làm ko ra. em muốn hiện 4 kí tự mnpq lên 4 led ma trận dùng 4 595. mà em không hiểu viết làm sao để dịch bit vào 595 hết.. em hiểu là có 1 xung clock thì nó dịch vào một bit nhưng em không biết làm sao cho nó liên tiếp nhau ạ. ai cho em xin đoạn code để nghiên cứu thêm a
|
![]() |
![]() |
![]() |
|
|