|
一,打開文件(可以隨文下載放置在文檔中打開)。(如下圖1所示)
51hei.png (24.77 KB, 下載次數: 77)
下載附件
2020-10-10 02:16 上傳
圖1
二,調整原理圖大小,適合可視,另存工程文件。(如下圖2,3,4所示)
2.png (263.82 KB, 下載次數: 59)
下載附件
2020-10-9 21:35 上傳
圖2
3.png (136.22 KB, 下載次數: 75)
下載附件
2020-10-9 21:35 上傳
圖3
4.png (143.35 KB, 下載次數: 66)
下載附件
2020-10-9 21:35 上傳
圖4
三,點擊Source Code標簽。(如下圖5所示)
5.png (54.59 KB, 下載次數: 76)
下載附件
2020-10-9 21:35 上傳
圖5
四,編輯main.c Proteus8.9 VSM Studio ArduinoUNO仿真系列011_LCD1602并口 (如下圖6所示)
五,Main.c 代碼:
int main()
{
Setup();
loop();
}
Lcd1602.h:
#ifndef _LCD1602_H_
#define _LCD1602_H_
#include <inttypes.h>
#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include <avr/sleep.h>
#define u16 unsigned int
#define u8 unsigned char
//LCD控制引腳定義
#define RS PC0 //寄存器選擇
#define RW PC1 //讀/寫
#define EN PC2 //使能
//LCD控制端口
#define LCD_CRTL_PORT PORTC
//LCD數據端口定義
#define LCD_PORT PORTD
#define LCD_PIN PIND
#define LCD_DDR DDRD
//LCD控制引腳操作定義
#define RS_1() LCD_CRTL_PORT |= _BV(RS)
#define RS_0() LCD_CRTL_PORT &= ~_BV(RS)
#define RW_1() LCD_CRTL_PORT |= _BV(RW)
#define RW_0() LCD_CRTL_PORT &= ~_BV(RW)
#define EN_1() LCD_CRTL_PORT |= _BV(EN)
#define EN_0() LCD_CRTL_PORT &= ~_BV(EN)
//-----------------------------------------------------------------
// LCD忙等待
//-----------------------------------------------------------------
void LCD_BUSY_WAIT();
void Write_LCD_Command(u8 cmd);
void Write_LCD_Data(u8 dat);
void Initialize_LCD();
void LCD_clear(void);
void LCD_ShowString(u8 x, u8 y, u8 *str, u8 len);
void Disp_Temperature();
#endif
六,點擊構建工程按鈕,編譯工程。(如下圖6所示)
6.png (96.22 KB, 下載次數: 58)
下載附件
2020-10-9 21:35 上傳
圖6
七,點擊窗口左下方仿真按鈕,可見虛擬LED顯示。 (如下圖7,8,9所示)
7.png (144.52 KB, 下載次數: 68)
下載附件
2020-10-9 21:35 上傳
圖7
8.png (85.26 KB, 下載次數: 80)
下載附件
2020-10-9 21:35 上傳
圖8
9.png (145.6 KB, 下載次數: 71)
下載附件
2020-10-9 21:35 上傳
圖9
八,選擇release,點擊構建工程按鈕,編譯工程生成Hex文件。(如下圖10所示)
10.png (99.91 KB, 下載次數: 65)
下載附件
2020-10-9 21:35 上傳
圖10
附件Proteus8.9 VSM Studio ArduinoUNO仿真系列011_LCD1602并口在已安裝Proteus8.9的計算機文件夾中打開即可
需要進一步了解,請加入QQ群:976235464
|
評分
-
查看全部評分
|