Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <ipst.h> // IPST-SE Board
- word A,B,C,BAR; // save BarCode
- word whiteBrown = 665;
- word blackBrown = 265;
- void setup() {
- OK();
- }
- void loop() {
- barCode();
- }
- void barCode() {
- setTextSize(2);
- setTextColor(GLCD_BLACK);
- setTextBackgroundColor(GLCD_WHITE);
- while (analog(1) < blackBrown) { // เดินไปจนเจอสีน้ำตาล
- fd(40); delay(12);
- }
- ao(); delay(100);
- /*******************************/
- // แถบสีที่ 1 //
- /*******************************/
- while (analog(1) > blackBrown && analog(1) < whiteBrown) { // เดินไปจนกระทั่งเจอสีขาวหรือดำ
- fd(40);delay(12);
- }
- ao(); delay(100);
- if (analog(1) < blackBrown) { // ตรวจสอบว่าเป็นสีดำหรือไม่
- glcd(2, 0, "BLACK"); A = 1; // ให้ค่าบิตแรกเป็น 1
- while (analog(1) < blackBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40); delay(12);
- }
- ao(); delay(100);
- }
- else if (analog(1) > whiteBrown) { // ตรวจสอบว่าเป็นสีขาวหรือไม่
- glcd(2, 0, "WHITE"); A = 0; // ให้ค่าบิตแรกเป็น 0
- while (analog(1) > whiteBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40);
- delay(12);
- }
- ao(); delay(100);
- }
- /*******************************/
- // แถบสีที่ 2 //
- /*******************************/
- while (analog(1) > blackBrown && analog(1) < whiteBrown) { // เดินไปจนกระทั่งเจอสีขาวหรือดำ
- fd(40); delay(12);
- }
- ao(); delay(100);
- if (analog(1) < blackBrown) { // ตรวจสอบว่าเป็นสีดำหรือไม่
- glcd(3, 0, "BLACK"); B = 2; // ให้ค่าบิตที่ 2 เป็น 2
- while (analog(1) < blackBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40);
- delay(12);
- }
- ao(); delay(100);
- }
- else if (analog(1) > whiteBrown) { // ตรวจสอบว่าเป็นสีดำหรือไม่
- glcd(3, 0, "WHITE"); B = 0; // ให้ค่าบิตที่ 2 เป็น 0
- while (analog(1) > whiteBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40);
- delay(12);
- }
- ao(); delay(100);
- }
- /*******************************/
- // แถบสีที่ 3 //
- /*******************************/
- while (analog(1) > blackBrown && analog(1) < whiteBrown) { // เดินไปจนกระทั่งเจอสีขาวหรือดำ
- fd(40);
- delay(12);
- }
- ao(); delay(100);
- if (analog(1) < blackBrown) { // ตรวจสอบว่าเป็นสีดำหรือไม่
- glcd(4, 0, "BLACK"); C = 4; // ให้ค่าบิตที่ 3 เป็น 4
- while (analog(1) < blackBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40);
- delay(12);
- } ao(); delay(100);
- }
- else if (analog(1) > whiteBrown) { // ตรวจสอบว่าเป็นสีขาวหรือไม่
- glcd(4, 0, "WHITE"); C = 0; // ให้ค่าบิตที่ 3 เป็น 0
- while (analog(1) > whiteBrown) { // เดินต่อไปจนเจอสีน้ำตาล
- fd(40);
- delay(12);
- } ao(); delay(100);
- }
- /*******************************/
- // แสดงผล //
- /*******************************/
- BAR = A + B + C; // นำค่ากำลังของบิตที่ 1-3 มาบวกกัน
- glcdFillScreen(GLCD_BLUE);
- setTextSize(10);
- setTextBackgroundColor(GLCD_BLUE);
- setTextColor(GLCD_YELLOW);
- glcd(0, 1, "%d ", A + B + C); // แสดงผลที่หน้าจอ GLCD
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement