新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > PIC單片機多路開關(guān)程序

PIC單片機多路開關(guān)程序

作者: 時間:2016-11-30 來源:網(wǎng)絡(luò) 收藏
程序介紹:使用同一個IO口進行設(shè)置,高字節(jié)為按鍵,低字節(jié)為燈,流程中嵌入關(guān)系式變化:

FCV_COUNT = FCV_COUNT>>4;
FCV_COUNT = FCV_COUNT & 0x0f;

//** Date: Wednesday, November 21, 2012 20:50:00
//本程序版權(quán)所有: 51hei.com
#define MX_PIC
//Defines for microcontroller
#define P16F690
#define MX_EE
#define MX_EE_SIZE 256
#define MX_SPI
#define MX_SPI_BCB
#define MX_SPI_SDI 4
#define MX_SPI_SDO 7
#define MX_SPI_SCK 6
#define MX_UART
#define MX_UART_B
#define MX_UART_TX 7
#define MX_UART_RX 5
#define MX_I2C
#define MX_MI2C
#define MX_I2C_B
#define MX_I2C_SDA 4
#define MX_I2C_SCL 6
#define MX_PWM
#define MX_PWM_CNT 1
#define MX_PWM_TRIS1 trisc
#define MX_PWM_1 5

本文引用地址:http://m.butianyuan.cn/article/201611/323979.htm

//Functions
#define MX_CLK_SPEED 19660800
#ifdef _BOOSTC
#include
#endif
#ifdef HI_TECH_C
#include
#endif
//Configurationdata
//Internal functions
#include "F:Program FilesMatrix MultimediaFlowcode V4FCDinternals.h"
//Macro function declarations

//Variable declarations
char FCV_COUNT;
//Macro implementations
void main()
{

//Initialisation
ansel = 0;
anselh = 0;

//Interrupt initialisation code
option_reg = 0xC0;

//Loop
//Loop: While 1
while (1)
{
//Input
//Input: PORT C -> count
trisc = trisc | 0xff;
FCV_COUNT = portc;

//Calculation
//Calculation:
// count = count>>4
// count = count AND 0x0f
FCV_COUNT = FCV_COUNT>>4;
FCV_COUNT = FCV_COUNT & 0x0f;
//Output
//Output: count -> PORT C
trisc = 0x00;
portc = FCV_COUNT;

}

mainendloop: goto mainendloop;
}
void MX_INTERRUPT_MACRO(void)
{
}


關(guān)鍵詞: PIC單片機多路開

評論


技術(shù)專區(qū)

關(guān)閉