Мазмуну:

Клавиатура: 8 кадам
Клавиатура: 8 кадам

Video: Клавиатура: 8 кадам

Video: Клавиатура: 8 кадам
Video: HYPERX ALLOY FPS PRO: ТЕПЕРЬ ТОЧНО ПРОФЕССИОНАЛЬНАЯ - обзор от Олега 2024, Июль
Anonim
Клавиатура
Клавиатура

Бүгүн мен талкуулап жатканым сенсор эмес, бул кадимки нерсе, бул кадимки нерсе, бул клавиатура эмес, эски телефон кыркылганга окшош эмес, бул каалаган микроконтроллер менен керектүү өндүрүштү алуу үчүн колдонулат.

Көпчүлүк түзмөктөрдө сенсордук баскычтар же маалымат киргизүү үчүн физикалык бирөө бар, ошондуктан бул нерсени биздин долбоорго киргизүү үчүн мен бул боюнча макала жасоону чечтим.

1 -кадам: АЧКЫНЧА ЭМНЕ

Бул 4x4 Matrix тибиндеги структура же схема, ал саптын жана мамычанын санына жараша ачкычтын чыгышын чечет. Ар бир тамгада камтылган элементтер менен катар саптардын жана мамычалардын саны микроконтроллерге берилет, андан кийин чыгаруу ошол матрицага ылайык микроконтроллер тарабынан чечилет.

2 -кадам: КОЛДОНУУ

  • Колдонууга оңой
  • Төмөн баа
  • Ар кандай микро контроллерге туташтырса болот

3 -кадам: PINOUT

КАДАП ЧЫГЫП
КАДАП ЧЫГЫП

4 -кадам: КОМПОНЕНТТЕР КЕРЕК

  • Ар бир микроконтроллер, башталгычтар үчүн Arduino Uno.
  • Нан тактасы
  • Өткөргүч зымдар
  • Баскычтоп

5 -кадам: БАЙЛАНЫШ

БАЙЛАНЫШ
БАЙЛАНЫШ

Жогорудагы сүрөттө жана коддун астындагы клавиатуранын саптары жана мамылары болгон пинди туташтырыңыз жана чыгарууну көрүү үчүн сериялык мониторду колдонуңуз.

6 -кадам: КОД

#кошуу

const байт ROWS = 4; // төрт катар

const байт COLS = 4; // төрт мамыча

// клавиатуралардын баскычтарындагы символдорду аныктаңыз

char hexaKeys [ROWS] [COLS] = {

{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}

};

байт rowPins [ROWS] = {9, 8, 7, 6}; // баскычтоптун сап түйүндөрүнө туташуу

байт colPins [COLS] = {5, 4, 3, 2}; // баскычтоптун мамычанын пинуттарына туташуу

// NewKeypad классынын инстанциясын инициализациялоо

Клавиатура customKeypad = Баскычтоп (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

жараксыз орнотуу () {

Serial.begin (9600);

}

void loop () {

char customKey = customKeypad.getKey ();

if (customKey) {

Serial.println (customKey);

}

}

ЭСКЕРТҮҮ:- Мен Arduino китепкана менеджеринин жардамы менен орнотула турган KEYPAD LIBRARY колдондум

7 -кадам: ЭМГЕК

Код башталганда, ал клавиатура туташтырылган саптар менен мамычалардын түйрөгүчтөрүн инициализациялайт, андан кийин анын маанисин матрицада сактайт. Андан кийин микро контроллер матрицанын баскычтобунан чыгууну күтөт. Чыгууну алгандан кийин микро контроллер инициализация учурунда матрицага ылайык баскычтын чыгышын чечет.

Андан кийин матрицага туура келген маанилер сериялык монитордо көрсөтүлөт (Ctrl+Shift+M).

8 -кадам: PCB ДИЗАЙНЫ

PCB DESIGN
PCB DESIGN
PCB DESIGN
PCB DESIGN
PCB DESIGN
PCB DESIGN

Азыр бизде PCB дизайны бар жана ПХБга заказ берүү убактысы келди.

Бул үчүн сиз жөн гана JLCPCB.com сайтына кирип, "АЗЫР СУЙЛӨ" баскычын чыкылдатыңыз.

JLCPCB дагы бул долбоордун демөөрчүсү. JLCPCB (ShenzhenJLC Electronics Co., Ltd.), Кытайдагы эң чоң PCB прототип ишканасы жана жогорку ПХБ прототипине жана чакан партиялуу PCB өндүрүшүнө адистешкен жогорку технологиялуу өндүрүүчү. Сиз болгону $ 2 үчүн эң аз 5 PCBге заказ бере аласыз.

PCB өндүрүшүн алуу үчүн, акыркы кадамда жүктөп алган gerber файлын жүктөңүз. The.zip файлын жүктөңүз, же сиз да gerber файлдарын сүйрөп барып таштай аласыз.

ZIP файлын жүктөгөндөн кийин, эгер файл ийгиликтүү жүктөлсө, сиз ылдый жагында ийгиликтүү кабарды көрөсүз. Баары жакшы экенине ынануу үчүн Gerber кароочудагы ПКБны карап чыгыңыз. Сиз ПКБнын үстүнкү жана астыңкы бөлүгүн көрө аласыз.

Биздин ПХБ жакшы көрүнгөнүнө ынангандан кийин, биз азыр заказды акылга сыярлык баада жайгаштыра алабыз. Сиз 5 ПХБга болгону 2 долларга заказ берсеңиз болот, бирок бул сиздин биринчи заказыңыз болсо, анда 2 ПКБга 2 долларга ала аласыз.

Буйрутманы берүү үчүн "КАРТАГА САКТА" баскычын басыңыз.

Менин ПХБларым 2 күндүн ичинде өндүрүлүп, DHL жеткирүү опциясын колдонуп бир жуманын ичинде келди. ПКБлар жакшы таңгакталган жана сапаты чынында эле жакшы болчу.

Сунушталууда: