các pác xem giùm em, em đã lập trình và chạy thông trên Proteus nhưng khi làm mạch thật thì " ì ạch" ko chạy
Thông báo
Collapse
No announcement yet.
8051 hien thi LCD
Collapse
X
-
Bạn cần đưa sơ đồ và code lên. Sơ đồ đưa dưới dạng hình ảnh thì tốt.AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
Xem thêm tại Online Store ---> Click here
Mob: 0982.083.106
-
Bạn cần code LCD 4 bit hay 8 bit, tôi gửi cho, trên mạng cũng nhiều mà...Code:/* LCD define */ #define DISPLAY_ON 4 #define DISPLAY_OFF 0 #define CURSOR_ON 2 #define CURSOR_OFF 0 #define CURSOR_BLINK_ON 1 #define CURSOR_BLINK_OFF 0 #define SHIFT_DISPLAY 8 #define MOVE_CURSOR 0 #define SHIFT_RIGHT 4 #define SHIFT_LEFT 0 #define B_INTERFACE 16 #define N_INTERFACE 0 #define TWO_LINES 8 #define ONE_LINE 0 #define BIG_FONT 4 #define SMALL_FONT 0 #define INCREMENT_CURSOR 2 #define DECREMENT_CURSOR 0 #define DISPLAY_SHIFT_ON 1 #define DISPLAY_SHIFT_OFF 0 void init_uC(); void delay10us(); void delay100us(); void time_ms(); void delay_ms(int n); /* LCD procedures */ void enable_clock(); void write_byte(BYTE wbyte, BYTE cmd); void turnoff_display(); void cursor_home(); void control_display(BYTE D, BYTE C, BYTE B); void clear_display(); void function_set(BYTE DL, BYTE N, BYTE F); void entry_mode_set(BYTE ID, BYTE S); void cursor_shift(BYTE SC, BYTE RL); void write_char(BYTE character); void jump_cursor(BYTE address); void reset_lcd(); void write_string_lcd(char *lcd_message); void lcd_introduction(char *f, char *s); /* Some delay procedures */ void delay10us() { BYTE i; for (i=0;i<1;i++); } void delay100us() { BYTE i; for (i=0;i<30;i++); } void time_ms() /* Approximate 1 ms delay with XTAL 11.0592MHz */ { int i; for (i = 0; i < 115 ; i++) ; } void delay_ms(int n) /* Approximate do nothing n*1ms */ { int i; for (i=0; i< n ; i++) time_ms(); } /* The procedures are used to display LCD */ sbit RS = P2^0; sbit LCD_RW = P2^1; sbit LCD_E = P2^2; sbit DB7 = P2^7; sbit DB6 = P2^6; sbit DB5 = P2^5; sbit DB4 = P2^4; void enable_clock() { LCD_E = 1; LCD_E = 0; } void write_byte(BYTE wbyte, BYTE cmd) { RS=cmd; DB7=(wbyte>>7)&0x01; DB6=(wbyte>>6)&0x01; DB5=(wbyte>>5)&0x01; DB4=(wbyte>>4)&0x01; enable_clock(); DB7=(wbyte>>3)&0x01; DB6=(wbyte>>2)&0x01; DB5=(wbyte>>1)&0x01; DB4=(wbyte>>0)&0x01; enable_clock(); } void turnoff_display() { write_byte(0x08,0); } void cursor_home() { write_byte(0x02,0); delay_ms(5); } void control_display(BYTE D, BYTE C, BYTE B) /* Control display on/off, cursor blink */ { write_byte(0x08 | D | C | B,0); } void clear_display() /* Clear display */ { write_byte(0x01,0); } void function_set(BYTE DL, BYTE N, BYTE F) /* Function set */ { write_byte(0x20 | DL | N | F,0); } void entry_mode_set(BYTE ID, BYTE S) /* Entry mode set */ { write_byte(0x04 | ID | S,0); } void cursor_shift(BYTE SC, BYTE RL) { write_byte(0x10 | SC | RL,0); } void write_char(BYTE character) { write_byte(character,1); } void jump_cursor(BYTE address) { write_byte(address,0); } void reset_lcd() { LCD_RW = 0; RS = 0; DB7=0; DB6=0; DB5=1; DB4=1; delay_ms(5); DB7=0; DB6=0; DB5=1; DB4=1; delay100us(); DB7=0; DB6=0; DB5=1; DB4=1; time_ms(); DB7=0; DB6=0; DB5=1; DB4=0; delay100us(); function_set(N_INTERFACE, TWO_LINES, BIG_FONT); /* Byte interface, two lines, 5x10 dots */ turnoff_display(); control_display(DISPLAY_ON, CURSOR_OFF, CURSOR_BLINK_OFF); clear_display(); entry_mode_set(INCREMENT_CURSOR, DISPLAY_SHIFT_ON); /* Increment cursor position, display shift */ control_display(DISPLAY_ON, CURSOR_OFF, CURSOR_BLINK_OFF); } void write_string_lcd(char *lcd_message) { BYTE i=0; while(i<strlen(lcd_message)) { write_char(lcd_message[i]); i++; } } void lcd_introduction(char *f, char *s) { clear_display(); cursor_home(); jump_cursor(0x81); write_string_lcd(f); jump_cursor(0xC2); write_string_lcd(s); control_display(DISPLAY_ON, CURSOR_OFF, CURSOR_BLINK_OFF); delay_ms(3000); clear_display(); }
|
Comment
-
http://linhnc308.googlepages.com/myprojects
Tren nay co kha nhieu code ma toi da lam va suu tam dc. ban co the tham khao.Ethernet-RS232, PIC Webserver, RFID Reader
CallerID, Cảnh báo BTS, ...
0988006696
linhnc308@gmail.com
http://linhnc308.blogspot.com
Comment
-
Nguyên văn bởi philong Xem bài viếtban oi co the giup minh mot ty duoc khong. Hien gio minh dang lam do an tim hieu ve VDK 8051 giao tiep voi lcd lm032l ban co the giup minh tim hieu ve cach ket noi vo cho minh code cua lcd do duoc khong. Minh cam on ban.
http://www.latke.net/lcd/
http://dientuvietnam.net/forums/showthread.php?t=8577
Comment
Bài viết mới nhất
Collapse
-
bởi nhathung1101Muốn đặt gì thì cũng phải có thông tin cơ bản. Việc nhỏ thế này mà phải dấu giếm thì người lớn không thèm làm đâu.
Cho bạn 3 ngày, không là sẽ xóa.-
Channel: Đặt hàng
Hôm qua, 22:02 -
-
Trả lời cho Hỏi cách điều chế xungbởi nhathung1101Schmit Trigger là chuẩn với điều kiện rise > 0,8V.
Bí thì dùng vi với tích gì đó, miễn đừng nói phân kẻo chó ở đây lại sủa nhặng.-
Channel: Kỹ thuật điện tử tương tự
Hôm qua, 21:57 -
-
bởi trungautMình cần đặt hàng thiết kế chế tạo mạch nghịch lưu 3 pha để cài đặt các thuật toán điều khiển động cơ FOC, DTC, ... Xin liên hệ trungaut@gmail.com để bàn chi tiết. Xin cảm ơn diễn dàn đăng tin!
-
Channel: Đặt hàng
Hôm qua, 14:27 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi tuyennhanCách ly dây điện vào , bộ nguồn và đèn khỏi khung xe thì có rò thật cũng không lo bị giật .
-
Channel: Điện tử dành cho người mới bắt đầu
21-12-2024, 08:56 -
-
Trả lời cho Hỏi cách điều chế xungbởi thetungBạn cho qua cái Tờ ri gơ Sờ mít ấy ......
-
Channel: Kỹ thuật điện tử tương tự
16-12-2024, 11:26 -
-
Trả lời cho Hỏi cách điều chế xungbởi nguyendinhvanCó gì mà khó ?
Răn cưa vuông đây
...-
Channel: Kỹ thuật điện tử tương tự
15-12-2024, 23:36 -
-
Trả lời cho hỏi về tụ điệnbởi ndp62Chữ " VENT" không phải là tên hãng sx tụ đâu ,vó thế là 1 ký hiệu liên quan tụ lowesr ?
-
Channel: Điện thanh
15-12-2024, 18:24 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi bqvietTrừ trường hợp công suất (rất) thấp, hầu như tất cả các loại nguồn xung thông thường đều có tụ nhỏ 1 - 10nF nối giữa sơ cấp và thứ cấp, để thoát nhiễu và để chống hiện tượng tương tự tĩnh điện. Vụ này đã thảo luận vài...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 22:02 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi namlangnhoE thử 3 cái nguồn nó đều giống nhau. Nên e làm tiếp địa luôn.
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 19:58 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi mèomướpDạ chú sắm con át chống giật và thay nguồn tổ ong khác cho an toàn ạ. Đa phần nguồn xung đều xả nhiễu của bên thứ cấp về điện lưới qua 1 con tụ nên cảm giác tê sẽ khó xác định rõ ràng là do rò điện hay là nó vốn vậy...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 18:51 -
Comment