Display C
Display C
* File: display.c
* Author: Jarrett Rainier
* Comments: TM1637 driver for the newer 8-bit PIC16F / PIC18F series
* Requires pins configured as OD (open drain) and WPU (weak pull up)
* Revision history:
*/
#include "display.h"
display_sof();
write_byte(0x40);
display_eof();
display_sof();
write_byte(0xC0);
write_byte(digit1);
write_byte(digit2);
write_byte(digit3);
write_byte(digit4);
display_eof();
}
void display_sof(void) {
unsigned int delay;
CLK_SetHigh();
DO_SetHigh();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
DO_SetLow();
}
void display_ack(void) {
unsigned int delay;
CLK_SetLow();
DO_SetDigitalInput();
CLK_SetHigh();
while(DO_GetValue());
CLK_SetLow();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
DO_SetDigitalOutput();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
}
void display_eof(void) {
unsigned int delay;
CLK_SetLow();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
DO_SetLow();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
CLK_SetHigh();
for(delay = 0; delay < DISPLAY_DELAY; delay++);
DO_SetHigh();
}