void setDisplay(uint8_t digits[]) { setStrobeLines(0); strobeWait(); setDataLines(digits[0]); pulseStrobeLine(1); setDataLines(digits[1]); pulseStrobeLine(2); setDataLines(digits[2]); pulseStrobeLine(3); setDataLines(digits[3]); pulseStrobeLine(4); setDataLines(digits[4]); pulseStrobeLine(5); setDataLines(digits[5]); pulseStrobeLine(6); setDataLines(0); }
void writeRAMChip(void){ //Set address lines and WE to output OUT_GPIO(WE); OUT_GPIO(A0); OUT_GPIO(A1); OUT_GPIO(A2); OUT_GPIO(A3); OUT_GPIO(A4); OUT_GPIO(A5); OUT_GPIO(A6); OUT_GPIO(A7); OUT_GPIO(A8); OUT_GPIO(A9); OUT_GPIO(A10); OUT_GPIO(A11); OUT_GPIO(A12); OUT_GPIO(A13); OUT_GPIO(A14); OUT_GPIO(A15); OUT_GPIO(D0); OUT_GPIO(D1); OUT_GPIO(D2); OUT_GPIO(D3); nibble temp; for(int i = 0; i < 65536; i++){ //Set ouputs setAddressLines(i); temp = MAINMEM[i]; usleep(10); //Write output GPIO_CLR = 1 << WE; usleep(10); setDataLines(temp); usleep(10); GPIO_SET = 1 << WE; usleep(10); } puts("\nFinished writing MEM to RAM"); }