پروژه های ramin.yousefi2@gmail.com AVR,ARM,PIC,8051

لطفا ایمیل بزنید

راه اندازی Interrupt FIQ در LPC21xx
 

 

در این پروژه شما با نحوه راه اندازی اینتراپت با بالاترین اولویت FIQ آشنا می شوید.

با فعال کردن اینتراپت خارجی 1 خروجی های P1.16  تا P1.23  خاموش و روشن می شوند.

/* Language: C */
/* Compiler: Keil ARM V2.00b */
/* Oscillator frequency 12.000 Mhz */
#include <LPC21xx.H>
//declare FIQ ISR
void FIQ_Handler (void) __fiq;
void initFiq(void);
void main (void)
{
//Initilise the Fast interrupt source
initFiq();
//clear the LED pins
IOCLR1 = 0x00FF0000;
while(1)
{
; //Loop here forever
}
}
void FIQ_Handler (void) __fiq
{
//Set the LED pins
IOSET1 = 0x00FF0000;
//Clear the peripheral interrupt flag
EXTINT = 0x00000002;
}
void initFiq(void)
{
//Set the LED pins as outputs
IODIR1 = 0x00FF0000;
//Enable the EXTINT1 interrupt
PINSEL0 = 0x20000000;
//Enable a Vic Channel as FIQ
VICIntSelect = 0x00008000;
VICIntEnable = 0x00008000;
}
 

 
 
کنترل موتور BLDC توسط پروتکل CAN میکروکنترلر AT90CAN128
 

استفاده از موتورهای بدون جاروبک (Brushless DC) رو به افزایش است. از دلایل رشد استفاده از این موتورها می توان به اندازه و سایز خوب نسبت به توان این موتورها. شتاب عالی، نیاز نداشتن و یا نیاز خیلی کم به نگهداری، نداشتن صدا و نویز نسبت به موتورهای DC معمولی جاروبک دار.

کنترل موتورهای جاروبک دار به صورت فیزیکی محل قرارگیری سیم پیچ ها را مشخص می کند ولی این عمل در موتورهای بدون جاروبک به صورت الکتریکی صورت می گیرد.

این پروژه با دو کامپایلر IAR و کدویژن نوشته شده (به همراه توضیح خط به خط برنامه) که شما را قادر می سازد توسط پروتکل های CAN , UART , PWM ,  سرعت و جهت موتور را کنترل کنید. 


 
 
ماشین حساب سریال
 

 

این پروژه به سفارش نیلوفر تهیه شده است.

شرح پروژه :

ماشین حساب سریال
مداری طراحی کنید که بتواند 4عمل اصلی را بر روی اعداد حقیقی انجام داده و از پورت سریال برای نمایش عملیات و پاسخ ها
استفاده کند.این مدار باید برای خواندن از ورودی ها از یک صفحه کلید 16 تایی و یکی از پورت های میکروکنترلر استفاده نماید و
بتواند با اعداد منفی و اعشاری نیز کار کند.

 
 
ماشین حساب تک رقمی عدد صحیح به زبان C کامپایلر keil
 


 
 
ماشین حساب کامل به همراه حافظه به زبان اسمبلی
 


 
 
راه اندازی واحد شتاب دهنده حافظه MAM
 

یکی از محدودیت های عمده در طراحی یک میکروکنترلر با کارایی بالا بر مبنای ARM7 ، زمان دسترسی به حافظه ی فلش روی تراشه است.

پردازنده ی ARM می تواند حداکثر تا 80MHz کار کند، در حالیکه زمان دسترسی به حافظه ی فلش، حدود 50ns است، در نتیجه اجرای برنامه از حافظه ی فلش ، سرعت اجرا را محدود به 20MHz  خواهد کرد(یک چهارم سرعت پردازنده). بنابر این یکی از روش های غلبه بر این مشکل استفاده از واحد MAM می باشد.


 
 
راه اندازی ماتریس 8*8 توسط 8051
 

 

در این پروژه تمامی اعداد از 0 تا 9 

و تمامی حروف انگلیسی چه به شکل بزرگ و چه کوچک به ترتیب تعریف شده پشت سر هم نمایش داده می شود.


 
 
راه اندازی MAX7221 درایور سون سگمنت
 


 
 
صفحه کلید ماتریسی با pic
 


 
 
راه اندازی پروتکل CAN با ARM
 

CAN (مخفف Controller Area Network) یک باس استاندارد است که برای برقراری ارتباط بین واحدهای کنترل الکترونیکی (ECU) درون یک خودرو طراحی شده و پراستفاده ترین پروتکل در طراحی و ساخت قسمت های ارتباطی وسایل نقلیه است. امروزه CAN بخاطر قابلیت هایی که دارد، در انواع پروژه ها و محیط های صنعتی نیز استفاده می شود.
CAN یک پروتکل مبتنی بر پیام (message based) و multi-master broadcast سریال است. شبکه CAN می تواند شامل تعداد زیادی Node باشد که هر Node قابلیت ارسال و دریافت اطلاعات را دارد. هر پیام شامل یک ID و حداکثر 8 بایت داده است. وسایل (device) های متصل شده به CAN، عموما حسگرها (sensor)، محرک ها (actuator) و دیگر تجهیزات کنترلی هستند.
ویژگی ها :
-   پرسرعت (تا 1Mbps)
-   قابلیت اولویت بندی پیام ها، مناسب برای طراحی سیستم بلادرنگ (پیام با شماره ID پایین تر دارای اولویت بالاتر است)
-   باس 2 سیمه تفاضلی (2-wire differential bus)
-   ایمنی بسیار زیاد در برابر نویز
-   قابلیت خطایابی، کنترل و رفع خطا (در مواقع تداخل و ...)
-   استاندارد ISO 11898 در لایه Data link و قسمت هایی از لایه فیزیکی

 

برنامه ارسال و دریافت را می توانید از آدرس زیر دانلود کنید.

http://cloud.zigur.com/public.php?service=files&t=5d0c1f93c08de118f9823c372d0fddec&download


 
 
کنترلر موتور DC با ریموت کنترل
 

 

این پروژه به سفارش میلاد تهیه شد.

در این پروژه توسط دکمه های تقسیم و ضرب موتور را چپگرد و راستگرد کرده. و با کلید های 1 تا 9 سرعت موتور را کنترل می کنیم . که به ترتیب از 1 کمترین سرعت و 9 بیشترین سرعت می شود.


 
 
پروژه کنترل موتور پله ای با ریموت کنترلر
 

 

این پروژه به سفارش میلاد تهیه شده .

عملکرد مدار:

با کلید های ضرب و تقسیم موتور به ترتیب تند و کند می گردد. و با کلید های 1 تا 9 به ترتیب از یک دور تا 9 دور می چرخد. برای مثال با زدن دکمه 1 موتور 1 دور می چرخد و با زدن دکمه 9 موتور 9 بار دور خود می چرخد.

با کلید های - و + هم به ترتیب می توانید موتور را چپگرد و راستگرد کنید.

برای مثال شما ابتدا عدد 2 را زده بعد دکمه ضرب را زده بعد دکمه - را موتور 2 دور با سرعت تند در جهت چپ می چرخد.  

 


 
 
ساخت ساعت با تایمر داخلی 8051 به زبان C
 

 


 
 
راه اندازی LCD کاراکتری به زبان C
 


 
 
چشمک زن به زبان C با کامپایلر keil