1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include <SPI.h>
- #define SELECT() digitalWrite(9, 0)
- #define UNSELECT() digitalWrite(9, 1)
- void setup()
- {
- SPI.begin();
- pinMode(9, OUTPUT);
- UNSELECT();
- }
- static byte scroll;
- void vga(int addr)
- {
- SELECT();
- SPI.transfer(scroll);
- SPI.transfer(addr >> 8);
- SPI.transfer(addr);
- }
- void cls()
- {
- vga(0);
- for (int i = 0; i < (128 * 48 * 2); i++)
- SPI.transfer(0);
- UNSELECT();
- }
- void xloop()
- {
- cls();
- for (int a = 30; a < 10000; a += 256) {
- vga(a);
- for (int attr = 0; attr < 16; attr++) {
- SPI.transfer('*');
- SPI.transfer(attr);
- }
- SPI.transfer(0);
- SPI.transfer(0);
- for (int attr = 0; attr < 256; attr += 16) {
- SPI.transfer('*');
- SPI.transfer(attr);
- }
- UNSELECT();
- }
- delay(1000);
- }
- void loop()
- {
- int a = random(128 * 48);
- vga(2 * a);
- SPI.transfer(random(256));
- SPI.transfer(random(256));
- UNSELECT();
- }
- class TTY: public Print {
- public:
- virtual size_t write(uint8_t character) {
- };
- private:
- // otherstuff
- };
|