欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
Atmega32A驅動LCD1602顯示屏
[打印本頁]
作者:
qq732357710
時間:
2017-5-5 05:41
標題:
Atmega32A驅動LCD1602顯示屏
對于初學者來說,最煩躁的可能就是調試程序,往往小小一個問題,要找個一個小時,甚至幾個小時才能解決,這個程序是剛調試完的,整整九個多小時啊,現在看著挺簡單的,沒調試好前根本不敢肯能調得好.高手別笑,初學者參考
編程環境Atmel Studio 7.0 和Proteus 8仿真,說明:仿真和真實電路是有點區別的,仿真Proteus 8只能用內部晶振,最大8MHz,我的DIY板是16M,所以實際電路總是比仿真的跑快好多
0.png
(47.08 KB, 下載次數: 104)
下載附件
2017-5-5 16:11 上傳
0.png
(58.07 KB, 下載次數: 106)
下載附件
2017-5-5 16:10 上傳
單片機源程序:
/*
* LCD1602_AVR.h
*
* Created: 2017/3/19 23:07:51
* Author: lyl
*LCD1602的基本操作時序
1,讀狀態,輸入:RS=L RW=H E=H 輸出:D0~D7=狀態字
2,讀數據,輸入:RS=H RW=H E=H 輸出:D0~D7=數據
2,寫指令,輸入:RS=L RW=L D0~D7=指令碼 E=高脈沖 輸出:無
3,寫數據,輸入:RS=H RW=L D0~D7=數據 E=高脈沖 輸出:無
*/
#define F_CPU 8000000UL
#include <avr/io.h> //io端口寄存器配置文件,必須包含
#include <util/delay.h> //GCC中的延時函數頭文件
#define uchar unsigned char
#define uint unsigned int
#ifndef LCD1602_AVR_H_
#define LCD1602_AVR_H_
#define DataPort PORTC
#define DataPort_DDR DDRC
#define DataPort_PIN PINC
#define CtrPort PORTB
#define CtrPort_DDR DDRB
#define CtrPort_PIN PINB
#define RS 0
#define RW 1
#define EN 2
#define LCD1602_SetRS() (CtrPort |= (1<<RS))
#define LCD1602_ClrRS() (CtrPort &= ~(1<<RS))
#define LCD1602_SetRW() (CtrPort |= (1<<RW))
#define LCD1602_ClrRW() (CtrPort &= ~(1<<RW))
#define LCD1602_SetEN() (CtrPort |= (1<<EN))
#define LCD1602_ClrEN() (CtrPort &= ~(1<<EN))
void LCD1602_PortInit(void); //端口初始化
void LCD1602_CheckBusy(void); //LCD1602忙信號檢測
void LCD1602_Init(void); //LCD1602初始化
void LCD1602_WriteData(uchar ucData);//在液晶上寫數據或者命令,0為命令,1為數據
void LCD1602_WriteCmd(uchar cmd);
void LCD1602_CursorPosition(uchar x,uchar y);//將液晶的坐標移動到指定的位置
void LCD1602_WriteChar(uchar x,uchar y,uchar ucData);//在指定的位置上顯示一個字符串;
void LCD1602_WriteString(uchar x,uchar y,uchar *Str);//在液晶上顯示字符串
#endif
復制代碼
完整代碼和仿真文件下載:
Atmega32A驅動LCD1602顯示屏.7z
(66.72 KB, 下載次數: 32)
2017-5-5 05:39 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1