資源簡介
74HC164擴展按鍵處理程序集非常詳細,難得的好文件!!!

代碼片段和文件信息
/*****************************************************?
?*?main.c?中如此這般:?
?*****************************************************/?
kd_init();?
//?......?
while?(1)?
{?
if(?should_update_kd?)?
{?
kd_update();?
}?
//?Other?code?
//?......?
}?
//再看顯示、鍵掃源代碼:?
/******************************************************?
?*?key_disp-config.h?
?******************************************************/?
#ifndef?_KEY_DISP_CFG_H_?
#define?_KEY_DISP_CFG_H_?
#define?DIGIT1?B?0?
#define?DIGIT2?B?1?
#define?DIGIT3?B?2?
#define?DIGIT4?B?3?
#define?KEY_FB?D?6?
#define?KD_CLR?D?7?
#define?KD_CLK?B?5?
#define?KD_DAT?B?4?
#define?KEY_NONE?(uint8_t)(0xFF)?
#define?KEY_S1?(uint8_t)(0x01<<0)?
#define?KEY_S2?(uint8_t)(0x01<<1)?
#define?KEY_S3?(uint8_t)(0x01<<2)?
#define?KEY_S4?(uint8_t)(0x01<<3)?
#define?KEY_S5?(uint8_t)(0x01<<4)?
#define?KEY_S6?(uint8_t)(0x01<<5)?
#define?KEY_S7?(uint8_t)(0x01<<6)?
#define?KEY_S8?(uint8_t)(0x01<<7)?
#endif?/*_KEY_DISP_CFG_H_*/?
/******************************************************?
?*?key_disp.h?
?******************************************************/?
#ifndef?_KEY_DISP_H_?
#define?_KEY_DISP_H_?
#include??
#include?“key_disp-config.h“?
#define?KD_CODE_NONE?10?
#define?KD_CODE_PAUSED?11?
#define?KD_CODE_CW?12?
#define?KD_CODE_CCW?13?
#define?KD_CODE_SET_RUN?14?
#define?KD_CODE_SET_SLEEP?15?
#define?KD_CODE_TIMER_RUN?16?
#define?KD_CODE_TIMER_SLEEP?17?
#define?KD_CODE_EXTERN_TRIG?18?
#define?KD_CODE_EXTERN_CTRL?19?
#define?KD_CODE_H?20?
#define?KD_CODE_M?21?
#define?KD_CODE_S?22?
//?Initialize?key?&?display?
void?kd_init();?
//?Update?key?&?display?MUST?be?called?periodically?eg.?in?timer?
void?kd_update();?
//?Get?key?code?
uint8_t?kd_get_key();?
//?Set?mode?to?display?
void?kd_display_code(uint8_t?digit_id?uint8_t?code_id);?
//?Set?display?digits?dp_pos=-1?means?no?dp?displayed?
void?kd_display(uint16_t?value?uint8_t?max_digits?const?int8_t?dp_pos);?
#endif?/*_KEY_DISP_H_*/?
/******************************************************?
?*?key_disp.c?
?******************************************************/?
#include?“avr/io.h“?
#include?“key_disp.h“?
#include?“config.h“?
#include?“util.h“?
#define?NOP()?asm?volatile?(“nop“)?
static?const?uint8_t?seg_code[]?=??
{?
0x3F/*0*/?0x06/*1*/?0x5B/*2*/?0x4F/*3*/?0x66/*4*/?
0x6D/*5*/?0x7D/*6*/?0x07/*7*/?0x7F/*8*/?0x6F/*9*/?
0x00/*KD_CODE_NONE*/?
0x73/*KD_CODE_PAUSED*/?
0x21/*KD_CODE_CW*/?
0x03/*KD_CODE_CCW*/?
0x50/*KD_CODE_SET_RUN*/?
0x6D/*KD_CODE_SET_SLEEP*/?
0x09/*KD_CODE_TIMER_RUN*/?
0x36/*KD_CODE_TIMER_SLEEP*/?
0x79/*KD_CODE_EXTERN_TRIG*/?
0x39/*KD_CODE_EXTERN_CTRL*/?
0x76/*KD_CODE_H*/?
0x20/*KD_CODE_M*/?
0x22/*KD_CODE_S*/?
};?
#define?SEG_DP?0x80?
static?volatile?uint8_t?_key_code?=?0xFF;?
static?volatile?uint8_t?_digits[4];?
void?kd_init()?
{?
PORT_DDR_SET(DIGIT
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????682??2011-04-22?17:22??74HC164擴展按鍵的處理程序集\164.txt
?????文件??????58394??2011-04-22?15:42??74HC164擴展按鍵的處理程序集\164掃描按鍵程序.pdf
?????文件???????6957??2011-04-21?15:42??74HC164擴展按鍵的處理程序集\164按鍵.c
?????文件???????4046??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164\74HC164.aps
?????文件????????701??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164\74hc164.aws
?????文件???????1189??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\74HC164.c
?????文件??????87378??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164\74HC164.DSN
?????文件???????1197??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164\74HC164.PWI
?????文件???????5731??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default\74HC164.elf
?????文件???????2055??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default\74HC164.hex
?????文件???????4464??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default\74HC164.o
?????文件???????1049??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default\dep\74HC164.o.d
?????文件???????1821??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default\Makefile
?????文件??????87378??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164\Last?Loaded?74HC164.DBK
?????文件?????209463??2010-01-04?19:09??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管\74HC164鍵掃+顯示實例.pdf
?????文件?????508560??2010-01-04?22:43??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管\74HC164鍵掃+顯示實例,已經過項目驗證?.mht
?????文件????????739??2010-01-29?00:11??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管\key_disp-config.h
?????文件???????4513??2010-01-29?00:09??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管\key_disp.c
?????文件???????1045??2010-01-29?00:11??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管\key_disp.h
?????文件?????209463??2010-01-04?19:09??74HC164擴展按鍵的處理程序集\74HC164鍵掃+顯示實例.pdf
?????文件?????508560??2010-01-04?22:43??74HC164擴展按鍵的處理程序集\74HC164鍵掃+顯示實例,已經過項目驗證?.mht
?????文件????????739??2010-01-29?00:11??74HC164擴展按鍵的處理程序集\key_disp-config.h
?????文件???????4513??2010-01-29?00:09??74HC164擴展按鍵的處理程序集\key_disp.c
?????文件???????1045??2010-01-29?00:11??74HC164擴展按鍵的處理程序集\key_disp.h
?????目錄??????????0??2009-02-22?13:13??74HC164擴展按鍵的處理程序集\74HC164\default\dep
?????目錄??????????0??2009-02-23?10:05??74HC164擴展按鍵的處理程序集\74HC164\default
?????目錄??????????0??2009-02-23?10:07??74HC164擴展按鍵的處理程序集\74HC164
?????目錄??????????0??2010-02-12?21:44??74HC164擴展按鍵的處理程序集\74HC164_按鍵_數碼管
?????目錄??????????0??2011-06-10?15:33??74HC164擴展按鍵的處理程序集
-----------?---------??----------?-----??----
............此處省略2個文件信息
- 上一篇:BP漢字識別GUI.zip
- 下一篇:labview生成掃頻信號
評論
共有 條評論