استفاده از نمایشگرها برای نمایش داده ها به کاربر در یک پروژه ضروری است . برای نمایش داده هایی که فقط از نوع عدد و یا بعضی از حروف هستند می توان از (Seven segment) سون سگمنت استفاده کرد . اما سون سگمنتها دارای تعداد زیادی پین هستند که می تواند تعداد زیادی پین میکروکنترلر را اشغال کند و فضایی برای اتصال دیگر قطعات به میکروکنترلر باقی نماند.
اگر یک عدد سون سگمنت را مستقیماً به میکروکنترلر وصل کنیم، به 8 پین از میکروکنترلر نیاز خواهیم داشت. به همین ترتیب، اگر از نمایشگرهای سون سگمنت دو رقمی، سه رقمی و چهار رقمی استفاده کنیم، حتی اگر از تکنیک های مالتی پلکس برای ذخیره پین های میکروکنترلر استفاده کنیم، به پین های بیشتری از میکروکنترلر نیاز خواهیم داشت.
برای رفع چنین مشکلاتی می توان از شیفت رجیسترهایی استفاده کرد که می توانند پین های میکروکنترلر را برای دیگر مصارف ذخیره کنند.
بنابراین، با استفاده از یک شیفت رجیستر سریال 74HC595، میتوانیم پینهای میکروکنترلر را ذخیره کرده و از آنها برای مقاصد دیگر استفاده کنیم. به عنوان مثال، اگر از این آی سی رجیستر شیفت سریال استفاده کنیم، می توانیم به جای استفاده از 8 پایه ، تنها با استفاده از سه پایه،سون سگمنت را با هر نوع میکروکنترلری راه اندازی کنیم.
این به این معنی است که سه پین برای کنترل نه تنها یک، بلکه چندین سون سگمنت نیز وجود دارد.
جهت کسب اطلاعات بیشتر به دیتاشیت شیفت رجیستر 74hc595 مراجعه نمایید .
موضوعاتی که در این مقاله به آنها پرداخته خواهد شد :
ماژول سون سگمنت 4 رقمی همراه با درایور 74HC595
در این آموزش ما قصد داریم چهار عدد سون سگمنت که به صورت ماژول آماده در بازار موجود است را راه اندازی کنیم . این ماژول با نام ، 4BitLED Digital Tube Module می باشد و توسط دو عدد آی سی شیفت رجیستر 74hc595 که بر پشت pcb ماژول قرار دارند راه اندازی می شود .
شکل زیر شماتیک و نمایی از پشت و رو ماژول 4 سون سگمنت با 74hc595 را نمایش می دهد .
پایه ها(pinout) ماژول سون سگمنت چهارتایی با 74595
کانکتور ورودی :
پین های در یک طرف ماژول برای ارتباط با میکروکنترلر استفاده می شود.
- VCC : ولتاژ تغذیه 3.3 الی 5 ولت
- SCLK : پین کلاک شیفت رجیستر
- RCLK : پین کلاک رجیستر ذخیره یا لچ
- DIO : ورودی داده سریال است
- GND : به زمین متصل می شود
کانکتور خروجی :
پین های در انتهای دیگر ماژول زمانی استفاده می شوند که می خواهید نمایشگرها را با هم زنجیر کنید.
- VCC : ولتاژ تغذیه 3.3 الی 5 ولت
- SCLK : پین کلاک شیفت رجیستر
- RCLK : پین کلاک رجیستر ذخیره یا لچ
- QH : در صورتی که می خواهید از چندین ماژول به صورت زنجیره ای استفاده کنید این پین را به پین DIO ماژول بعدی متصل کنید
- GND : به زمین متصل می شود
راه اندازی ماژول سون سگمنت 74hc595 با stm32
کتابخانه ای که سایت میکرونیک جهت سهولت کار با ماژول سون سگمنت 4 تایی توسط درایور 74hc595 تهیه کرده ، توسط توابع HAL نوشته شده است و تمامی تنظیمات با نرم افزار CubeMX انجام می شود . برای اتصال ماژول سون سگمنت از spi نرم افزاری استفاده شده است و می توان ماژول را به پایه دلخواه از میکروکنترلر وصل نمود ، برای اینکار فقط کافی است سه پایه از میکروکنترلر stm32 را در حالت خروجی GPIO_Output پیکربندی کنید و نام یا لیبل پایه ها را مانند تصویر زیر قرار دهید .
توابع کتابخانه ماژول سون سگمنت 4 تایی با چیپ 74hc595 برای stm32 , codevision به شرح زیر است :
void Init_display(void); void clear_display(void);//turn off all LEDs void set_pointer(uint8_t s,uint8_t pos); //0-3 void set_num(uint8_t num,uint8_t pos); //set number into position(0-3) void set_byte(uint8_t b,uint8_t pos); //set byte into position void write_bytes(uint8_t b0,uint8_t b1,uint8_t b2,uint8_t b3); void printInt(int n, uint8_t showZero); void printString(char *str); void printfString(char const *str); void scrollString(char *str ,unsigned int scrolldelay); void Refresh(void);
مثال همراه پروژه بصورت عملی بر روی بورد بلوپیل با چیپ STM32F103C8T6 تست شده است ، که در ادامه فیلم عملکرد آن قرار داده شده است . این کتابخانه قابلیت اضافه شدن به سایر میکروکنترلرهای STM32 را نیز دارد .
عملکرد سورس کد و توابع زیر را می توانید در فیلم قرار داده شده مشاهده کنید .
کتابخانه ، توابع و مثال سون سگمنت 4 تایی با 74hc595 برای کدویژن ، دقیقا شبیه به کتابخانه stm32 می باشد و عملکرد آن شبیه به فیلم بالا می باشد .
همچنین بخوانید : راه اندازی سون سگمنت 4 تایی با درایور TM1637