Skip to content

Instantly share code, notes, and snippets.

@Lukelectro
Last active July 18, 2021 12:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Lukelectro/d1b224dee37517d91bba9bf4f437b85b to your computer and use it in GitHub Desktop.
Save Lukelectro/d1b224dee37517d91bba9bf4f437b85b to your computer and use it in GitHub Desktop.
/*
* 10x 9443 display module
* Aart 06-2021
*
* Logic board:
*
* 34_pin function register function
*
* 1,2,3,4 V+
*
* 5 D0 display A0
* 6 D1 display A1
* 7 D2 odd or !even column
* 8 D3 A0 row
* 9 D4 A1 row
* 10 D5 A2 row
* 11 D6 Display A2
* 12 D7 EN or !EN module via ST2, pos 1 is !EN ( ? - klopt dit ?)
*
* 17 !EN module via ST2
* 20 !EN module bia ST2, pos 1 Tied to GND on header.
* 19 !WR display
* 15 LE latch register
*
* (29,30,)31,32 GND (29,30 might not be GND on some boards)
*
*/
#define D0 8
#define D1 9
#define D2 7
#define D3 6
#define D4 4
#define D5 5
#define D6 2
#define D7 3
#define LE 16
#define WR 10
void setup() {
// put your setup code here, to run once:
pinMode (D0, OUTPUT);
pinMode (D1, OUTPUT);
pinMode (D2, OUTPUT);
pinMode (D3, OUTPUT);
pinMode (D4, OUTPUT);
pinMode (D5, OUTPUT);
pinMode (D6, OUTPUT);
pinMode (D7, OUTPUT);
digitalWrite (WR, HIGH);
pinMode (WR, OUTPUT);
digitalWrite (LE, LOW);
pinMode (LE, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
for (int i=1; i<255; i++) {
// Serial.println(i);
module_9443_setDigit(i,i);
}
delay(1000);
}
void module_9443_setDigit (int digit, char content) {
// write address register
delay(1);
digitalWrite(LE, LOW);
writeData(digit);
delay(1);
digitalWrite(LE, HIGH);
delay(1);
//write data to digit
delay(1);
writeData(content);
delay(1);
digitalWrite(WR, LOW);
delay(1);
digitalWrite(WR, HIGH);
}
void writeData(byte Data) {
digitalWrite (D0,((Data >> 0) & 1));
digitalWrite (D1,((Data >> 1) & 1));
digitalWrite (D2,((Data >> 2) & 1));
digitalWrite (D3,((Data >> 3) & 1));
digitalWrite (D4,((Data >> 4) & 1));
digitalWrite (D5,((Data >> 5) & 1));
digitalWrite (D6,((Data >> 6) & 1));
digitalWrite (D7,((Data >> 7) & 1));
}
@Lukelectro
Copy link
Author

Arduino-code van Aart om een 7003-asy display aan te sturen.
https://wiki.makerspaceleiden.nl/mediawiki/index.php/RadarBoardsSchipholControl

@Lukelectro
Copy link
Author

pin 29, 30 might not actually be ground on some boards...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment