freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

大賽期間訓練程序總結(jié)報告(一)(編輯修改稿)

2025-07-09 08:24 本頁面
 

【文章內(nèi)容簡介】 存儲寄存器早一個脈沖。移位寄存器有一個串行移位輸入( Ds),和一個串行輸出( Q7’ ) ,和一個異步的低電平復位,存儲寄存器有一個并行 8位的,具備三態(tài)的總線輸出,當使能 OE時(為低電平),存儲寄存器的數(shù)據(jù)輸出到總線。 了解了下該芯片的工作原理后,在看看其驅(qū)動電路。由于我們在進行訓練期間,開發(fā)板上沒有該芯片模塊,故我 自己在仿真軟件上搭建了該電路,如圖: 由上序搭建的電路很容易就可以看出,這里兩次調(diào)用了 74HC595,用級聯(lián)方式進行工作的,其工作的方式如下: 單片機先送 1個 8位數(shù)據(jù)到第一個 595的內(nèi)部移位寄存器 然后數(shù)據(jù)會送到內(nèi)部的輸出寄存器 輸出 。 當 SCLR( 10引腳)為高電平, OE( 13引腳)為低電平時,數(shù)據(jù)在 SCK( SHCP 上升沿進入移位寄存器,在 LCK( STCP上升沿輸出到并行端口。 接著我們具體來看下代碼: /* 實驗目的: 8段共陽極數(shù)碼管的動態(tài)驅(qū)動 74HC595的串并轉(zhuǎn)換功能 */ /* 程序功能: 8段數(shù)碼管顯示 1, 2, 3, 4, 5, 6, 7, 延時 2秒后,顯示 8, 9, A,B, C, D, E, F,如此循環(huán) */ // 包含文件 //include //include include include define uchar unsigned char define uint unsigned int // 宏定義延時 1s define Delay_1us _nop_()。_nop_()。_nop_()。_nop_()。_nop_()。_nop_()。_nop_()。_nop_()。\ _nop_()。_nop_()。_nop_()。_nop_() // 8段數(shù)碼管位選 74595 并口 I/O定義 // QH QG QF QE QD QC QA QB define SEL_EIG 0x80 define SEL_SEV 0x40 define SEL_SIX 0x20 define SEL_FIV 0x10 define SEL_FOU 0x08 define SEL_THI 0x04 define SEL_SEC 0x02 define SEL_FIR 0x01 // 8段數(shù)碼管段選 74595 并口 I/O定義 define SEG_A 0xfe define SEG_G 0xfd define SEG_DP 0xfb define SEG_D 0xf7 define SEG_E 0xef define SEG_B 0xdf define SEG_C 0xbf define SEG_F 0x7f // 74HC595串口 I/O口定義 sbit DIN = P1^0。 //單片機數(shù)據(jù)輸出口 sbit E_595 = P1^1。 sbit SCK = P1^2。 // 全局變量定義 uchar FIR_Number。 uchar SEC_Number。 uchar THI_Number。 uchar FOU_Number。 uchar FIV_Number。 uchar SIX_Number。 uchar SEV_Number。 uchar EIG_Number。 // 8段數(shù)碼管(共陽極) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9的字模 code uchar Segments[ ] = { /* SEG_Aamp。SEG_Bamp。SEG_Camp。SEG_Damp。SEG_Eamp。SEG_F, // 0 SEG_Bamp。SEG_C, // 1 SEG_Aamp。SEG_Bamp。SEG_Damp。SEG_Eamp。SEG_G, // 2 SEG_Aamp。SEG_Bamp。SEG_Camp。SEG_Damp。SEG_G, // 3 SEG_Bamp。SEG_Camp。SEG_Famp。SEG_G, // 4 SEG_Aamp。SEG_Camp。SEG_Damp。SEG_Famp。SEG_G, // 5 SEG_Aamp。SEG_Camp。SEG_Damp。SEG_Eamp。SEG_Famp。SEG_G, // 6 SEG_Aamp。SEG_Bamp。SEG_C, // 7 SEG_Aamp。SEG_Bamp。SEG_Camp。SEG_Damp。SEG_Eamp。SEG_Famp。SEG_G,// 8 SEG_Aamp。SEG_Bamp。SEG_Camp。SEG_Damp。SEG_Famp。SEG_G, // 9 SEG_Aamp。SEG_Bamp。SEG_Camp。SEG_Eamp。SEG_Famp。SEG_G, // A SEG_Camp。SEG_Damp。SEG_Eamp。SEG_Famp。SEG_G, // B SEG_Aamp。SEG_Damp。SEG_Eamp。SEG_F, // C SEG_Bamp。SEG_Camp。SEG_Damp。SEG_Eamp。SEG_G, // D SEG_Aamp。SEG_Damp。SEG_Eamp。SEG_Famp。SEG_G, // E SEG_Aamp。SEG_Eamp。SEG_Famp。SEG_G, // F */ 0xc0,0xcf,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e }。 // 串行數(shù)據(jù)輸出到 595并口 void Output_595(uchar DIS_NUM1, uchar DIS_NUM2) { uchar i。 // 輸出 8位段碼 這里給數(shù)碼管輸數(shù)據(jù)相當于串行 通信; for(i=0。 i8。 i++) { DIN = (bit)(DIS_NUM1 amp。 0x80)。//將最高位,也就是送入 DIS_NUM1 = 0x01。//將送入的數(shù)據(jù)的每一位都移到最高位 SCK = 0。 Delay_1us。 Delay_1us。 SCK = 1。 } // 輸出 8位位選 for(i=0。 i8。 i++) { DIN = (bit)(DIS_NUM2 amp。 0x80)。 DIS_NUM2 = 0x01。 SCK = 0。 Delay_1us。 Delay_1us。 SCK = 1。 } Delay_1us。 Delay_1us。 E_595 = 0。// 拉低鎖存器控制端 Delay_1us。 Delay_1us。 E_595 = 1。// 上升沿,將數(shù)據(jù)輸出到鎖存器 Delay_1us。 Delay_1us。 E_595 = 0。// 拉低鎖存器控制端 Delay_1us。 Delay_1us。 } // 延時 1ms void Delay_1ms()// @ { unsigned char i, j。 _nop_()。 _nop_()。 i = 12。 j = 168。 do { while (j)。 } while (i)。 } // 主函數(shù) void main(void) { uchar SEG_SEL = 0。 uchar SEG_NUM = 0。 uint i。 //LED_PWM = 0。 while(1) { for(i=0。 i139。 i++) { SEG_SEL = SEL_FIR。 SEG_NUM = Segments[0]。 Output_595(SEG_NUM, SEG_SEL)。// 第 1個數(shù)碼管顯示 0 Delay_1ms()。 SEG_SEL = SEL_SEC。 SEG_NUM = Segments[1]。 Output_595(SEG_NUM, SEG_SEL)。// 第 2個數(shù)碼管顯示 1 Delay_1ms()。 SEG_SEL = SEL_THI。 SEG_NUM = Segments[2]。 Output_595(SEG_NUM, SEG_SEL)。// 第 3個數(shù)碼管顯示 2 Delay_1ms()。 SEG_SEL = SEL_FOU。 SEG_NUM = Segments[3]。 Output_595(SEG_NUM, SEG_SEL)。// 第 4個數(shù)碼管顯示 3 Delay_1ms()。 SEG_SEL = SEL_FIV。 SEG_NUM = Segments[4]。 Output_595(SEG_NUM, SEG_SEL)。// 第 5個數(shù)碼管顯示 4 Delay_1ms()。 SEG_SEL = SEL_SIX。 SEG_NUM = Segments[5]。 Output_595(SEG_NUM, SEG_SEL)。// 第 6個數(shù)碼管顯示 5 Delay_1ms()。 SEG_SEL = SEL_SEV。 SEG_NUM = Segments[6]。 Output_595(SEG_NUM, SEG_SEL)。// 第 7個數(shù)碼管顯示 6 Delay_1ms()。 SEG_SEL = SEL_EIG。 SEG_NUM = Segments[7]。 Output_595(SEG_NUM, SEG_SEL)。// 第 8個數(shù)碼管顯示 7 Delay_1ms()。 } for(i=0。 i139。 i++) { SEG_SEL = SEL_FIR。 SEG_NUM = Segments[8]。 Output_595(SEG_NUM, SEG_SEL)。// 第 1個數(shù)碼管顯示 8 Delay_1ms()。 SEG_SEL = SEL_SEC。 SEG_NUM = Segments[9]。 Output_595(SEG_NUM, SEG_SEL)。// 第 2個數(shù)碼管顯示 9 Delay_1ms()。 SEG_SEL = SEL_THI。 SEG_NUM = Segments[0x0A]。 Output_595(SEG_NUM, SEG_SEL)。// 第 3個數(shù)碼管顯示 A Delay_1ms()。 SEG_SEL = SEL_FOU。 SEG_NUM = Segments[0x0B]。 Output_595(SEG_NUM, SEG_SEL)。// 第 4個數(shù)碼管顯示 B Delay_1ms()。 SEG_SEL = SEL_FIV。 SEG_NUM = Segments[0x0C]。 Output_595(SEG_NUM, SEG_SEL)。// 第 5個數(shù)碼管顯示 C Delay_1ms()。 SEG_SEL = SEL_SIX。 SEG_NUM = Segments[0x0D]。 Output_595(SEG_NUM, SEG_SEL)。// 第 6個數(shù)碼管顯示 D Delay_1ms()。 SEG_SEL = SEL_SEV。 SEG_NUM = Segments[0x0E]。 Output_595(SEG_NUM, SEG_SEL)。// 第 7個數(shù)碼管顯示 E Delay_1ms()。 SEG_SEL = SEL_EIG。 SEG_NUM = Segments[0x0F]。 Output_595(SEG_NUM, SEG_SEL)。// 第 8個數(shù)碼管顯示 F Delay_1ms()。 } } } 點評: 本小項目的難以理解的地方就是單片機如何將要顯示的數(shù)據(jù)及要位選的那段數(shù)碼管送入到數(shù)碼管,理解了這一點,本程序基本就沒什么問題。這里單片機的段選數(shù)據(jù)及他的位選數(shù)據(jù)都是通過 口送出的(串行方式),再借用 74HC595 移位存儲寄存器來達到程序所表現(xiàn)出來的效果。 2. 3 LCD 顯示類 談到 LCD 就必須涉及到液晶,液晶是一種高分子材料 ,因為其特殊的物理、化學、光學特性,在發(fā)現(xiàn)之后就廣泛的應(yīng)用與輕薄型顯示上。 LCD 就是我們通常所說的液晶顯示器,其工作原理是:以電流
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1