|
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统 驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe |
哪位大侠能传个PIC的12864显示模块测试程序给我? |
作者:jerrylo 栏目:单片机 |
哪位大侠能传个PIC的12864显示模块测试程序给我? 我在学习LCD显示模块,控制芯片是KS0108B的,哪位大侠能传个PIC的测试程序给我?我的邮箱是jerry.lo@ontopsemi.com 谢谢!!! |
2楼: | >>参与讨论 |
作者: jerrylo 于 2006/5/10 9:21:00 发布:
哪位大侠能传个PIC的12864显示模块测试程序给我? 此模块没有内部字库.我一直在网上苦苦搜索,可都是51的,哪位好心人能传一份给我呢?或者在这里贴一份,我想这对很多新手而言,都是需要的!谢谢你们了! |
3楼: | >>参与讨论 |
作者: holtek 于 2006/6/9 10:48:00 发布:
路过!给你一份参考 //#include "pic.h" #define lcd_cursor(x) lcd_write(((x)&0x7F)|0x80)//Set the cursor position #define LCD_RS RD2 #define LCD_EN RD3 #define LCD_RW RD1 #define LCD_STROBE ((LCD_EN = 1),(LCD_EN=0)) void delay_10us(unsigned CHAR x) { while(x--); } void delay_ms(unsigned CHAR cnt) { unsigned CHAR i; do { i = 4; do { delay_10us(39); } while(--i); } while(--cnt); } /* write a byte to the LCD in 4 bit mode */ void lcd_write(unsigned CHAR c) { PORTD = (PORTD & 0x0F) | (c & 0xF0); LCD_STROBE; PORTD = (PORTD & 0x0F) | (c << 4); LCD_STROBE; delay_10us(4); } /* Clear and home the LCD */ void lcd_clear(void) { LCD_RS = 0; lcd_write(0x1); delay_ms(2); } /* write a string of CHARs to the LCD */ void lcd_puts(const CHAR * s) { LCD_RS = 1; // write CHARacters while(*s) lcd_write(*s++); } /* write one CHARacter to the LCD */ void lcd_putch(CHAR c) { LCD_RS = 1; // write CHARacters PORTD = (PORTD & 0x0F) | (c & 0xF0); LCD_STROBE; PORTD = (PORTD & 0x0F) | (c << 4); LCD_STROBE; delay_10us(4); } /*Go to the specified position*/ void lcd_goto(unsigned CHAR pos) { LCD_RS = 0; lcd_write(0x80+pos); } void lcd_init(void) { LCD_RS = 0; // write CONTROL bytes delay_ms(40); // POWER on delay,wait time>40ms PORTD = 0x20; // Function set,set 4 bit mode LCD_STROBE; delay_10us(10); //wait time >100us lcd_write(0x20); // Function set:4 bit mode. delay_10us(10); //wait time >100us lcd_write(0x0C); // DISPLAY ON/OFF CONTROL. delay_10us(10); //wait time >100us lcd_write(0x01); // DISPLAY clear delay_ms(10); //wait time >10ms lcd_write(0x06); // entry mode set } |
|
|
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入 |
Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号 |