日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
LCD1602顯示實驗
LCD1602顯示實驗
 更新時間:2008-7-26 19:23:13  點擊數(shù):3
【字體: 字體顏色
/*
實驗十五:
 LCD1602顯示實驗。
 1、LCD1602顯示實驗。顯示歡及網(wǎng)址信息。
 2、內部1 M晶振,程序采用單任務方式,軟件延時。
 3、進行此實驗請插上JP1、JP2的所有8個短路塊,PC7短路塊。
 AVR  mega16學習
 www.iccavr.com
 2007-04-13
*/

此主題相關圖片如下:lcd接口圖.jpg
#include <iom16v.h>
#include "lcd1602.h"
void main(void) {
 unsigned char i;
 unsigned char *p;
 PORTA = 0xFF;    /*打開上拉*/
 DDRA = 0x00;    /*方向輸入*/
 PORTB = 0xFF;    /*電平設置*/
 DDRB = 0xFF;    /*方向輸出*/
 PORTC = 0x7F;
 DDRC = 0x80;
 PORTD = 0xFF;
 DDRD = 0x00;
 delay_ms(100);
 LCD_init();
 while (1) {
  i = 1;
  p = "www.iccavr.com";
  LCD_clear();
  LCD_write_str(5,0,"Welcome");
  delay_ms(250);
  
  while (*p) {
   LCD_write_char(i,1,*p);
   i ++;
   p ++;
   delay_ms(250);
   }
  delay_ms(250);
  }
}
/*
 LCD1602液晶屏驅動模塊
 1、可直接嵌入到項目中使用
 2、晶振頻率:1M
 3、如晶振提高低層驅動延時要作相應修改
 AVR_AFA
 www.iccavr.com
 程序編寫過程中參照了peak的4線顯示程序
 peak:AVR論壇技術版版主
*/
#include <iom16v.h>
#define RS_CLR PORTD &= ~(1 << PD3)
#define RS_SET PORTD |= (1 << PD3)
#define RW_CLR PORTD &= ~(1 << PD4)
#define RW_SET PORTD |= (1 << PD4)
#define EN_CLR PORTD &= ~(1 << PD6)
#define EN_SET PORTD |= (1 << PD6)
/*延時函數(shù)*/
void delay_us(unsigned int n) {
 if (n == 0) {
  return ;
  }
 while (--n);
}
/*延時函數(shù)*/
void delay_ms(unsigned char i) {
 unsigned char a, b;
 for (a = 1; a < i; a++) {
  for (b = 1; b; b++) {
   ;
   }
  }
}
/*顯示屏命令寫入函數(shù)*/
void LCD_write_com(unsigned char com) {
 
 RS_CLR;
 RW_CLR;
 EN_SET;
 PORTB = com;
 delay_us(5);
 EN_CLR;
}
/*顯示屏命令寫入函數(shù)*/
void LCD_write_data(unsigned char data) {
 RS_SET;
 RW_CLR;
 EN_SET;
 PORTB = data;
 delay_us(5);
 EN_CLR;
}
/*顯示屏清空顯示*/
void LCD_clear(void) {
 LCD_write_com(0x01);
 delay_ms(5);
}
/*顯示屏字符串寫入函數(shù)*/
void LCD_write_str(unsigned char x,unsigned char y,unsigned char *s) {
 
    if (y == 0) {
     LCD_write_com(0x80 + x);
     }
    else {
     LCD_write_com(0xC0 + x);
     }
   
    while (*s) {
     LCD_write_data( *s);
     s ++;
     }
}
/*顯示屏單字符寫入函數(shù)*/
void LCD_write_char(unsigned char x,unsigned char y,unsigned char data) {
 
    if (y == 0) {
     LCD_write_com(0x80 + x);
     }
    else {
     LCD_write_com(0xC0 + x);
     }
   
    LCD_write_data( data); 
}
/*顯示屏初始化函數(shù)*/
void LCD_init(void) {
 
 DDRB = 0xFF;      /*I/O口方向設置*/
 DDRD |= (1 << PD3) | (1 << PD4) | (1 << PD6);
 LCD_write_com(0x38);    /*顯示模式設置*/
 delay_ms(5);
 LCD_write_com(0x38);
 delay_ms(5);
 LCD_write_com(0x38);
 delay_ms(5);
 LCD_write_com(0x38);
 
 LCD_write_com(0x08);    /*顯示關閉*/
 LCD_write_com(0x01);    /*顯示清屏*/
 LCD_write_com(0x06);    /*顯示光標移動設置*/
 delay_ms(5);
 LCD_write_com(0x0C);    /*顯示開及光標設置*/
}
  • 上一篇: AT90S8515瞬變信號捕介紹
  • 下一篇: LCD12864顯示實驗
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1