|
因?yàn)楣俜浇o的硬件IIC程序弄起來有點(diǎn)麻煩,索性不如用端口模擬一個(gè)IIC程序出來
0.png (10.76 KB, 下載次數(shù): 81)
下載附件
2018-10-18 16:35 上傳
單片機(jī)源程序如下:
- /*
- * LCD12864.C
- *
- * Created on: 2018年7月17日
- * Author: PC100
- */
- #include "LCD12864.h"
- #include "msp430.h"
- //寫顯示數(shù)據(jù)
- void LCD_data(unsigned char data_data)
- {unsigned int i;
- P1DIR=0x7c;
- P3DIR=0xff;
- P1OUT=0xff;
- P1OUT=(P1OUT^BIT3);//RW=0
- P1OUT=(P1OUT|BIT2);//RS=1
- // delay50us(1);
- for(i=0;i<4;i++)
- P3OUT=data_data;
- delay_10us();
- P1OUT=(P1OUT|BIT4);//E=1
- // delay50us(10);
- for(i=0;i<40;i++)
- delay_10us();
- P1OUT=(P1OUT^BIT4);//E=0
- // delay50us(2);
- delay_100us();
- }
- //寫指令
- void LCD_command(unsigned int com_data)
- {unsigned int i;
- P1DIR=0x7c;
- P3DIR=0xff;
- P1OUT=0xff;
- P1OUT=(P1OUT^BIT3);//RW=0
- P1OUT=(P1OUT^BIT2);//RS=0
- // delay50us(1);
- for(i=0;i<4;i++)
- delay_10us();
- P3OUT=com_data;
- P1OUT=(P1OUT|BIT4);//E=1
- // delay50us(10);
- for(i=0;i<40;i++)
- delay_10us();
- P1OUT=(P1OUT^BIT4);//E=0
- // delay50us(2);
- delay_100us();
- }
- //初始化
- void LCD_Init(void)
- { unsigned int i;
- // delay1ms(100);
- for(i=0;i<100;i++)
- delay_ms();
- LCD_command(0x30);
- // delay50us(4);
- for(i=0;i<16;i++)
- delay_10us();
- LCD_command(0x30);
- // delay50us(4);
- for(i=0;i<16;i++)
- delay_10us();
- LCD_command(0x0c);//開顯示屏
- // delay50us(4);
- for(i=0;i<16;i++)
- delay_10us();
- LCD_command(0x01); //清屏指令
- // delay50us(240);
- for(i=0;i<12;i++)
- delay_ms();
- LCD_command(0x06);
- // delay50us(10);
- for(i=0;i<40;i++)
- delay_10us();
- }
復(fù)制代碼
所有資料51hei提供下載:
IIC.zip
(78.68 KB, 下載次數(shù): 45)
2018-10-18 14:47 上傳
點(diǎn)擊文件名下載附件
MSP430F5529 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|