日韩成人激情_欧美黑人xxx_国产一区二精品区在线_精品在线一区_97成人资源_久久久久久一区

產品分類

當前位置: 首頁 > 工業電氣產品 > 高低壓電器 > 微型斷路器

類型分類:
科普知識
數據分類:
微型斷路器

PIC單片機控制點陣LED顯示技術研究

發布日期:2022-04-18 點擊率:117

 一、點陣LED的結構 
  使用的LED為14*15點陣,由六片7*5點陣LED拼接而成,先分別用三片LED橫向組成兩個7*15點陣,再用兩個7*15上下排列,組成需要的14*15點陣。當某一個LED所在的行驅動為低,列驅動為高時,這個發光管被點亮。 
  二、靜態顯示電路的構成 
  74LS164為TTL單向8位移位寄存器,可實現串行輸入,并行輸出。其中A、B(第1、2腳)為串行數據輸入端,2個引腳按邏輯與運算規律輸入信號,共一個輸入信號時可并接。CLK(第8腳)為時鐘輸入端,可連接到串行口的同步時鐘輸出端。每一個時鐘信號的上升沿加到CLK端時,移位寄存器移一位,8個時鐘脈沖過后,8位二進制數全部移入74LS164中。在給出了8個脈沖后,最先進入74LS164的第一個數據到達了最高位,再來一個脈沖,第一個脈沖就會從最高位移出。4片74LS164首尾相串,而時鐘端則接在一起。 
  只要我們對每片LED上7位行驅動中的一位輸入低電平,這行中相應列驅動為高的點就會被點亮。如此反復向每一行送入低電平,同時在相應的行被選中時,在列送入相應的數據,并反復的掃描,由于人眼存在視覺暫留效應就可以看到預期的畫面信息。 
  三、編碼方式 
  編碼方式是由硬件設計方式決定的。因為送入下排三個LED中最后一片最后一位的列驅動是最先進入74LS164的數據,所以字模的編碼順序和在LED顯示順序正好相反。而且PIC16F877做串行輸出時,串行輸出寄存器SSPBUF中的8位數據的最高位是最先送出的,所以每行8個點是右面為高位,左面為低進行編碼。后面的類推,要顯示一個完整的14*15點陣共需要28組的8位2進制字模數據。 
  四、PIC16F877與LED電路的連接 
  PIC16F877中提供了兩個串行通信模塊,分別是同步串行口和通用同步異步接收發送器。其中MSSP模塊又提供了兩種工作方式,一種是串行外圍接口(SPI),另一個工作方式是芯片間通信總線(IIC)。SSP模塊主要用于單片機和其他外圍接口或微處理器芯片間的串行通信,像串行EEPROM、顯示控制器、模擬數字轉換器等,都屬于電路板上眾多器件間的串行通信接口。USART則屬于和電路板外部設備串行通信的接口,簡單地說就是RS232接口,可以與PC通信。所以,我們選擇SPI同步串行通信方式送入行選編碼。SPI工作方式提供8位數據的傳輸,SCK引腳上的時鐘速度決定數據的傳輸速度。在連接的器件中,由主控器件來產生時鐘,其他器件以此外界的時鐘為標準。因此在使用SPI方式時,必須確定那個器件為主控器件,其它則為從控器件。本電路使用PIC16F877作為主控器件,SSP模塊工作在主控方式下。SCK引腳的時鐘由單片機自己產生,因此可以在任何時候數據的傳送,傳送在有寫入SSPBUF緩沖器的動作時開始,我們用SCK引腳輸出串行輸出同步時鐘。本電路中的SPI模塊中用來輸入出數據,那么SDI引腳可以關掉不用,這時SSBUF寄存器里的內容全根據設定的時鐘一位的由SDO引腳移出。在設置使用MSSP模塊的SPI工作方式前第一件事是初始化MSSP模塊,SSPCON寄存器包含了要設置的相關位,在設置完成后,置MSSP模式使能位SSPEN,便可以開始SPI方式的工作。同時,要復位SSP模塊,只要先將SSPEN位清除0,然后重新設置SSPCON,再將SSPEN設置為1就可以。設定好SSPCON就相當于設定了SDO,SCK,SDI,SS 為串行通信用的引腳,因此除了SSPCON寄存器的設置外,對SPI工作方式用到的引腳也要設置。SDO和SCK為輸出引腳,因此TRISC3和TRISC5必須清零。

  PORTD端口寄存器讀出的是相應的I/O引腳上的電平狀態,而寫PORTD

 端口寄存器則是寫入其數據鎖存器。另外,D端口還可以作為并行從動端口與單片機總線接口。這里,我們使用它的8 位并行數據輸出功能,作為7位并行行選信號和一位使能信號的輸出。 
  五、程序的編寫 
  程序各模塊功能說明: 
  INITIAL:初始化模塊。設置串行口工作方式為SPI主動方式;RC3,RC5引腳為輸出;SSPBUF寄存器在時鐘上升沿送出數據;串行同步時鐘為單片機內部時鐘的四分頻;清SSP中斷標志;使能SSP模塊。 
  I2C_OUT:串行口發送數據模塊,要發送的數據存放在TXDATA寄存單元中。將TXDATA內容送入SSPBUF中后,檢查SSPIF位。當此位被置1時,表示SSPBUF數據送完。SSPIF位需要手動清零,然后此模塊返回。 
  SHOW:將表TABLE的段地址裝入數據寄存器DATA1中。共有四個字符要顯示,數據寄存器NUM中存放當前顯示的是第幾個字體符。 
  SHOW1:每送一次行選取數據后連續送四個列選數據,數據寄存器R1 中存放在送出的是每四個列選數據是的第幾個,初始值為4。 
  SHOW2:初始化表地址段內偏移數據寄存器R0。由段地址和段內偏移相加得出要查表數據的頁內地址,地址值存放W寄存器。查表得到地址W 內的數據內容放入TXDATA數據寄存器,即當前要送入的列選數據。 
  SHOW3:將行選數據寄存器R2中的內容送放D口,顯示已經送出的四組列選數據。調用延遲模塊。關閉D口,LED全滅。從新計算行選數據,然后存入行選數據寄存器R2中。通過R3寄存器判斷是否一個字符是否全部顯示完畢,如果沒有完畢則回到SHOW1模塊,送出下面四個列選數據;否則轉到下一個模塊。 
  NUMBER:將當前的段內偏移加上段地址作為新的段地址,這個新的段地址存放在DATA1數據寄存器中。判斷是否所有字符都已經顯示完畢。如果沒有則轉移到SHOW6模塊準備顯示下一個字符;如果所有字符都已經顯示完畢,則回到主模塊MAIN,循環顯示四個字符。 
  DELAY:延遲模塊。因為每次LED上只有一行是顯示出來的,所以快速的刷新會在人的視覺系統中造成視覺暫留,人眼看到的就會是一幅完成的畫面。延遲程序時間的長短應使人肉眼看到的畫面連貫,無強烈閃爍。 

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
主站蜘蛛池模板: 国产一区二区三区视频免费观看 | 久久99视频免费观看 | 色约约视频| 亚洲成人日韩 | 日日噜噜噜夜夜爽爽狠狠视频97 | 久久国产成人精品国产成人亚洲 | 日韩一级 | 久久精品久久综合 | 国产精品国产a | 国产精品久久网 | 成人依人| 午夜视频一区二区 | 国产成人精品久久久 | 亚洲精品一区二区三区蜜桃久 | 欧美精品久久久久 | 精品一二三| 亚洲一级毛片 | 精品国产乱码久久久久久1区2区 | 在线永久看片免费的视频 | 日韩欧美精品 | 毛片大全 | 九九热最新地址 | 精品免费国产一区二区三区四区介绍 | 4h影视 | 亚洲午夜视频 | 中文字幕亚洲视频 | 黄色小视频大全 | 中文字幕 在线观看 | 国产精品.xx视频.xxtv | 在线精品一区 | 性国产xxxx乳高跟 | 日韩日韩日韩日韩日韩日韩日韩 | 黄色在线免费网站 | 国产一级在线观看 | 91久久综合亚洲鲁鲁五月天 | 亚洲国产视频一区 | 国产农村妇女毛片精品久久麻豆 | 一区二区三区在线 | 黄色国产在线视频 | 久久一区二区免费视频 | 日韩在线小视频 |