From 0fad22f86eabddd2129a2b2bfa88ce3f2669b114 Mon Sep 17 00:00:00 2001 From: kevin Date: Mon, 22 May 2023 15:03:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- demo1/.gitignore | 1 + demo1/demo1.ino | 73 ++++++++++++++++++++++++++++++++++++++++- demo1/src/oled12864.cpp | 2 +- 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 demo1/.gitignore diff --git a/demo1/.gitignore b/demo1/.gitignore new file mode 100644 index 0000000..6a9f783 --- /dev/null +++ b/demo1/.gitignore @@ -0,0 +1 @@ +.vs* \ No newline at end of file diff --git a/demo1/demo1.ino b/demo1/demo1.ino index a65d5d5..bf5206d 100644 --- a/demo1/demo1.ino +++ b/demo1/demo1.ino @@ -8,15 +8,68 @@ #define W_N 33 #define W_P 32 +#define EN_C 19 + +void motomove(int step) +{ + switch(step) + { + case 0: + digitalWrite(U_N, 1); + digitalWrite(U_P, 0); + digitalWrite(V_N, 1); + digitalWrite(V_P, 0); + digitalWrite(W_N, 1); + digitalWrite(W_P, 0); + break; + case 1: + digitalWrite(U_N, 0); + digitalWrite(U_P, 0); + digitalWrite(V_N, 1); + digitalWrite(V_P, 0); + digitalWrite(W_N, 1); + digitalWrite(W_P, 1); + break; + case 2: + digitalWrite(U_N, 1); + digitalWrite(U_P, 0); + digitalWrite(V_N, 1); + digitalWrite(V_P, 1); + digitalWrite(W_N, 1); + digitalWrite(W_P, 0); + break; + case 3: + digitalWrite(U_N, 1); + digitalWrite(U_P, 1); + digitalWrite(V_N, 1); + digitalWrite(V_P, 0); + digitalWrite(W_N, 0); + digitalWrite(W_P, 0); + break; + case 4: + digitalWrite(U_N, 1); + digitalWrite(U_P, 0); + digitalWrite(V_N, 0); + digitalWrite(V_P, 0); + digitalWrite(W_N, 1); + digitalWrite(W_P, 0); + break; + + } +} void setup() { // put your setup code here, to run once: + +//moto pin mode pinMode(U_N, OUTPUT); pinMode(U_P, OUTPUT); pinMode(V_N, OUTPUT); pinMode(V_P, OUTPUT); pinMode(W_N, OUTPUT); pinMode(W_P, OUTPUT); +//encode pin mode + pinMode(EN_C,INPUT_PULLUP); digitalWrite(U_N, 1); @@ -26,16 +79,34 @@ void setup() { digitalWrite(W_N, 1); digitalWrite(W_P, 0); + Serial.begin(115200); Wire.begin(); OLED_Init(); + OLED_Str(0,0,16,"test",0,1); } +int ii=0; +char srt[64]; void loop() { // put your main code here, to run repeatedly: - OLED_Str(0,0,16,"test",0,1); + if(digitalRead(EN_C)==0) + { + OLED_Str(0,0,16,"push",0,1); + ii+=1; + if(ii==5){ii=0;} + }else + { + OLED_Str(0,0,16,"test",0,1); + ii=0; + } + sprintf(srt,"index:%d",ii); + OLED_Str(0,16,16,srt,0,1); + motomove(ii); + delay(10); + OLED_Cache_to_hardware(); //OLED_Init(); diff --git a/demo1/src/oled12864.cpp b/demo1/src/oled12864.cpp index 1e35c98..7a47523 100644 --- a/demo1/src/oled12864.cpp +++ b/demo1/src/oled12864.cpp @@ -132,7 +132,7 @@ void OLED_Cache_to_hardware() }else {b=0;} - OLED_buff[y][x]=0x00; + //OLED_buff[y][x]=0x00; } } }