Embedded developer
36 subscribers
18 photos
3 videos
10 links
بیر پروگرامچینین کانالی
ادمینلر:
@Ildirim71
@MahmudRazliqli
Download Telegram
اگر گرافیکلی LCDلر اوستونده بیر عکس گورسدمک ایستسیز، او عکسی بیر آرایه‌ی چویرمک گَرَکدیر.
Http://javl.github.io/image2cpp
بیر وب پیج دیر کی عکسی آلیب C دیلینده سیزه آرایه ورر.

#lcd #image_converter
هر ائیشده مختلف ولتاژلار لازیمیک. عموما میکرولار ایچین ۳.۳ ایسته‌مه‌لییک. اما سیستمه گیرن ولتاژ اکثرا ۱۲ ولت دی.
رگولاتورون ایشی بودی کی بیر حد دن ولتاژی آلوب و سیزه ایستدیگینیز ولتاژی وئره.
بعضی لر ثابت ولتاژ وئرلر 7805 کیمین و بعضی لر مقاومت آرایشینن مثلا ۲ دن تا گیرن ولتاژا کیمین متغیر وئرلر.

خطی رگولاتورلار چخ مصرف‌لری اولار. خاصه کی مثلا ۱۲اینی ۵ یا ۳.۳ ائلمک ایستسیز، رگولاتور داغ ائلیر و اگر باتری ایله دستگاه ائیشلییر تزدن بوشانور. اونا گوره سوئچینگ رگولاتورلار ائیشلدین.
نچه مورد مصرفلی رگولاتورلار:
AMS1117-3.3 خطی، ۳.۳ ولت
AMS1117-2.5 خطی ۲.۵ ولت
LM317-Adj خطی، Adjustable
L7805 خطی، ۵ ولت
L7809 خطی، ۹ ولت

LM2576-5 سوئیچینگ، ۵ ولت
LM2576-Adj سوئچینگ، Adjustable
LM2596-Adj ""
👍1
AMS1117-3.3
This media is not supported in your browser
VIEW IN TELEGRAM
L7805
Embedded developer
Photo
و LM2576/96 بو دور. و البته ثابت ولتاژ لاری دا مداری بودور. فقط R1 R2 یوخدیلار و مستقیم فیدبکه وصل اولور
👍1
Embedded developer
Photo
اما چوخ اهمیتلی قطعه‌لردن بیری AE2359 دیر.
بو قطعه ده سوئیچینگدیر
آمما فرکانسی یوخاریدیر
اتلافی آز و چوخ دا کیچیکدیر.
👎1💩1
کانال دا یازماک چتین. گوینوم وار بیر سایت یولا سالام. اوردا پست قویوب، بوردا لینک وئرم ایستیین گئتسین اوخوسون. کیم بیلیر. شاید بیر شی لر د ساتدیم.

نئجه دی؟
Anonymous Poll
78%
یاخچی دی
11%
مهم دییل
11%
یخ
74HC595
8-bit Shift register

بو آی سی د DS پینینده بیر بیت یازین سورا SH_CP پینلرینه بیر پالس وئرین. DS پینینده اولان دیتا (۰ یا ۱) Q0 اوستونده گوروکر. یئنگی بیر بیت DS اوستونده یازیب گئنه SH_CP بیر پالس وئرین. بو سفر Q0 دکین Q1 د گورجییز یئنگی بیتی Q0 در.
بو شیفت رجیستر ۸ بیت دی. یانی ۸ پی دیتا یازیب پالس ورسیز Q0 تا Q7 اوستونده گورجییز.
۹ مینجی پالسدا DS گیرر Q0 ایچینه. Q0 گیرر Q1، Q1گیرر Q2 و نهایت Q7 گیرر Q7s ایچینه.
باشاراریز Q7s وصل الیز بیر جدید 74HC595ده و بوجوردا اگر ۱۶ بیت یازیب پالس ورسیز ۱۶ بیتی بو ایکی آی سی چیخیشلرینده گوره بیلریز.

نه کارا گلر؟
مثلا قراردادی ۱۰۰ دنه LED کنترل الییز. بو آی سین وصل الیین بیر ساده میکروکنترلره و ال‌ای‌دی‌لری کنترل الیین.

پین‌لر:
OE: چیخیش لری فعال ائلر و یازدیغیز دیتالار Qلار اوستونده گوروکر
SRCLK: بیر بیرینه وصل الییب. پالس لاری بو پینلره ورملییز
SRCLR: شیفت رجیستری ریست ائلر. چیخیش‌لری د
Q0...Q7:چیخیشلر
👍5
#OLED
#SSD1306
#SH1106
#I2C

بو OLEDلری آلاندا یازمیشدی SSD1306 درایوری دی. سایز ۱.۳ اینچ ده، بو من آلان OLED د یالاندی. اصیل درایور SH1106 دی کی تنظیمات دا تقریبا SSD1306ایله بیردی اما بیر بالا فرقی وار کی باعث اولور ایستدگیز OLED اوستونده گورسنمیه.
تفاوتی بو دور کی اول کی د پیج لر اتوماتیک گئدر قاباقا. اونا گوره فقط کافی دی سیز دیتالاری یازایز اوزو گورسدر ترتیبیله.
اما ایکینجی د اتومات گئتمز قاباقا گرک سیز دییز.
کتابخانه‌سین گیت‌هابا آپلودلارام. تمیزلمک لازیم دی.

رابطی د I2C دی.
👍3
#USB
#Filter

بیر دستگاه جورلینده اونون تغذیه‌سی USBدن آلونورسا، حتما بیر πفیلتری تغذیه‌سینه قوشون. چون کی چخ نویزی وار. پی فیلتری بئله دی کی تغذیه مسیرینده بیر خازن قوشالار، سورا بیر سلف/فریت‌بیت و گئنه بیر خازن. ایده بودور کی ایلک خازن بیر سری نویزلاری آلار. سلف یا فریت بیت د یوخاری فرکانس‌لاری کسر و نهایت ایکینجی خازنده قالمیش فرکانس‌لاری.

پی دییرلر چونکی مداری پییه اوخشار.
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
«رقابت با یوز ایرانی»

🪧 بعد از برد گردن‌آویز نقشۀ ایران در رقابت‌های المپیک فناوری سال گذشته، حالا از برد منحصربه‌فرد رقابت امسال، فتح پرچم سخت‌افزاری المپیک فناوری با نماد یوز ایرانی رونمایی می‌شود.

◀️ برای حضور در رقابت‌های فینال المپیک فناوری، باید از دروازۀ رقابت مقدماتی گذر کنید.

🗓 فرصت ثبت‌نام در رقابت‌های مقدماتی، به صورت رایگان و در قالب‌ تیم‌های ۱ تا ۴ نفره تا ۴ مهرماه خواهد بود.

🔗 اطلاعات بیشتر و ثبت‌نام

👥 @RavinAcademy
🆔 @SharifDaily
Please open Telegram to view this post
VIEW IN TELEGRAM
نئچه گون دور کی SIM800 اینترنته وصل اولماقینا اکیلمیشم. اپراتور قبول المیردی.
گوشیله د تست الدیم اولمادی. اما بو گون اولدی. دستگاه اما هلم اولمیردی.

ددیم گوجلو بیر آنتن نصب الییم. الدیم و اولدی.
زنگ یئیردی، اس ام اس گدیب گلیردی اما اینترنت وئرمیردی.

#SIM800
👍5
بیر دستگاه دوزلدیم کی SMSایله کانفیگ اولار. اپلیکیشنی د وار. چخ اذیت چکدیم. هم اپلیکیشن دوزلدمخ د. هم د بیر آپشن آز چخ اولاندا مشتری‌لرین سسی چیخیردی. بیرده بیری دئیردی بیلمم اس‌ام‌اس گلمیر، او بیری دییردی اس‌ام‌اس گلیر اپلیکیشنه اپلای اولمور و... .
خلاصه باخدیم گوردوم دوزدی بیر ESP32 قوشسام هزینه سی وار و دستگاه باهالاشار. اما داها اپلیکیشن سینک ساخلاماق یوخی. مشتری زنگلمخ یوخی. بیر است وردوم گوردوم یاخچی دی. سودومون بیر آزیندان گئچدیم، بو ماژولاری وردوم و ایندی قوشاجام دستگاه اوستونه.

گاهدان سود آز اولسا مشترینین نارضایتچیلیغی و زنگلشمسیندن یاخچی دی.

#ESP
🔥31
رمز الگوریتم‌لرین دن بیری AES دی. من اوزوم یوزدن ۹۹، AES-128 دوزلدیقیم سیستم‌لرده ائیشلردم.
۱۲۸ یانی نمه؟ یانی کلید ۱۲۸ بیت دی. که اولار ۱۶ بایت. بو الگوریتم د دیتا سایز ۱۶‌یا ضریبی اولمالی دی. یانی نه؟
یانی مثلا دیتا ۱۷ بایت اولسا، بو الگوریتمین چیخیشی ۳۲ بایت اولار. اگر ۱۰ بابت دیتایز اولسا، ۱۶ بایت چیخیشی اولار.

بو رمز ائلمک ایکی مدل واری، بیر ECB و بیر CBC
اول‌کی ده دیتا و کلیدی آلار، رمز ائلیب وئرر.
ایکینجی دیتا و کلید و بیر iv یا initialize vector آلیب، دیتانو اونونلا xor ائلر، سورا رمز. اگر دیتا ۱۶ بایت دان چخ اولسا، iv اوز اوزونه اول ۱۶ بایت دان دولار. یانی سیز هر ۱۶ بایت بلوک دیتا دا، جدید دیتا یارادیب رمز ائلریز کی باعث اولار آچماقی چتین اولا.

#aes128
#aes
#رمز
#encryption
#cbc
#ecb

سونوندا، بیر کتابخانه c د، چخ قدیم زامانلاردا تاپمیشدیم، ایندیه ساخلییب ائیشلدیرم. گیت هابیم دا وار:
https://github.com/araz71/library

گلجک د بیر میثال یازیب پایلاشارام.
👍21
Embedded developer
رمز الگوریتم‌لرین دن بیری AES دی. من اوزوم یوزدن ۹۹، AES-128 دوزلدیقیم سیستم‌لرده ائیشلردم. ۱۲۸ یانی نمه؟ یانی کلید ۱۲۸ بیت دی. که اولار ۱۶ بایت. بو الگوریتم د دیتا سایز ۱۶‌یا ضریبی اولمالی دی. یانی نه؟ یانی مثلا دیتا ۱۷ بایت اولسا، بو الگوریتمین چیخیشی ۳۲…
بیر مثال گتیردیم سیزه. دئدیگیم ریپو دان aes.c و aes.h ـی دانلودلایین و بو کود ایله کامپایلایین:
#include <stdio.h>
#include <string.h>
#include <stdint.h>
#include "aes.h"

int main() {
uint8_t output[64];
char AES_KEY[16] = "TOPSUZ TOFENGSIZ";

// Burda data size, 16iya bolonar.
const int data_1_size = 32;
uint8_t data_1[data_1_size];

int blocks_size = data_1_size / 16;
// Aval bir doldurak data ni
printf("Real data:\r\n");
for (int i = 0; i < data_1_size; i++) {
data_1[i] = i;
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", data_1[i]);
}
printf("\r\n");

// Indi encryption
for (int i = 0; i < blocks_size; i++)
AES_ECB_encrypt(data_1 + (i * 16), AES_KEY, output + (i * 16), 16);

printf("Encrypted result:\r\n");
for (int i = 0; i < data_1_size; i++) {
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", output[i]);
}
printf("\r\n");

// Indi decrypt
for (int i = 0; i < blocks_size; i++)
AES_ECB_decrypt(output + (i * 16), AES_KEY, output + (i * 16), 16);

printf("Decrypted result: \r\n");
for (int i = 0; i < data_1_size; i++) {
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", output[i]);
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Burda data size, 16iya bolunmaz
uint8_t data_2[35];
uint8_t buffer[16];

printf("\r\n\r\nReal data:\r\n");
for (int i = 0; i < 35; i++) {
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", i);
data_2[i] = i;
}
printf("\r\n");

// 35/16 olar 2. ama ghaldighi var. agar 35%16 sifir olsa yani 16ya boloner. yoksa bolunmwz. bir block izafe olur.
blocks_size = (35 / 16);
for (int i = 0; i < blocks_size; i++)
AES_ECB_encrypt(data_2 + (i * 16), AES_KEY, output + (i * 16), 16);

if ((35 % 16) != 0) {
memcpy(buffer, data_2 + (blocks_size * 16), 35 - (blocks_size * 16));
AES_ECB_encrypt(buffer, AES_KEY, output + (blocks_size * 16), 16);
blocks_size++;
}

printf("Encrypted data:\r\n");
for (int i = 0; i < blocks_size * 16; i++) {
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", output[i]);
}
printf("\r\n");

for (int i = 0; i < blocks_size; i++)
AES_ECB_decrypt(output + (i * 16), AES_KEY, output + (i * 16), 16);

printf("Decrypted data:\r\n");
for (int i = 0; i < blocks_size * 16; i++) {
if (i && (i % 16) == 0)
printf("\r\n");
printf("%02x ", output[i]);
}
printf("\r\n");

return 1;
}


کامپایل اۆچؤن یازین:
gcc -o main main.c aes.c


من فرض ائله‌دیم یازدیغیم کودو main.c ده ذخیره ائلمیشسینیز.

#aes #aes128 #example #c #source #code
2
شاید ۴ ساعات مشغولیدیم. بو MAX485 دیتا گوندریردی آما آلا بیلمیردی. آت آشغال آلیردی.

نئچه پی دئیشدیم بلسین. ن قدر چالیشدیم.
بیر آز دوشوندیم، کی یوخسا بونون بیر مقاومتی خاراب دی؟

نیه بونا دوشوندیم:
۱. آلوش دیتا متنوع دیتا دییلدی. یانی هر پی دئیشیلمیردی. فقط بیت لر دمک شیف یئیب یا not اولوب. چون دیتانی اوزوم یارادیرام اونا گوره بیلیردیم کی نه اولمالیدی و نیه احتمالا شیفت یئیب یا not اولوب.

۲. بو پروتکل‌دا بیر A واریمیز و بیر B که بیربیرینه گوره not دیلار. یانی A ولتاژی اولاندا B صفر اولار. پس یحتمل مثل B قطع دی که دیتا اوینیور. نیه B؟ چون اصلی دیتا A اوستونه مینر. مقصد د A-B حیساب اولار کی نویز بئیندن گئتسین پس A اگر ولتاژی اولسا یانی بیت حتما ۱ دی.
چون دیتا گئدیر پس حتما A سالم دی
ترسه سینده، یانی دیتا گلنده، اگر B وصل اولماسا، و اگر نویز چخ اولسا ممکن دی دیتا قات قاریشاق اولا کی اولوردی. شاید باشقا بیر ایرادات دا اولا
اما بو حدس لردن ۱۰۰ اهم مقاومتی توتدوم خارابیدی
دئیشدبم و دوزلدی.
👍2