C语言程序例程10
C语言程序例程//该程序用于开关量的输入,并显示在与D口相连的LED上,S1~S8分别控制Q1~Q8//开关量采用SPI方式通过74HC165输入,在调试程序时必须把8位的//拔码开关拔向相应的位置,即把8个LED接到PORTD口上#include"p18f458.h"volatileunsignedchardata;/*系统初始化子程序*/voidinitial(){PIR1=0;/*清除SSPIF标志*/SSPCON1=0x30;/*SSPEN=1;CKP=0,FOSC/4*/SSPSTAT=0xC0;TRISC=0x10;/*SDI引脚为输入,SCK引脚为输出*/TRISA=0x00;/*A口为输出方式,用RA4作控制信号*/TRISD=0x00;/*D口为输出方式*/INTCON=0x00;/*关闭所有中断*/}/*SPI接收子程序*/charSPIIN(){PORTAbits.RA4=0;/*74HC165并行置数使能,将8位开关量置入器件*//*(LOAD为低电平时8位并行数据置入74HC165)*/PORTAbits.RA4=1;
用户评论