PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : فیلم آموزش ایجاد پروژه در کامپایلر Keil v5



Doloop
01-08-2014, 05:47
سلام

با توجه به مشکلات زیادی که کاربران توی ایجاد پروژه با کامپایلر کیل بخصوص نسخه جدید اون داشتن بنده تصمیم گرفتم دوتا ویدئو از نحوه ساخت پروژه هم با کتابخونه CMSIS و هم بدون اون رو تهیه کنم ...
توی این ویدئوها از نسخه 5.10 کامپایلر Keil استفاده شده ...
اگر هم صدامون آزار دهنده بود میتونید قطع کنید :wink: چون ساعت ضبط ویدئوها زیاد مناسب نبود:mrgreen:
فایلهای پروژه ها رو هم همینجا قرار میدم ...

دانلود ویدئو آموزش ایجاد پروژه با استفاده از کتابخانه های CMSIS (You can see links before reply)

دانلود ویدئو آموزش ایجاد پروژه با استفاده از کتابخانه های Keil (You can see links before reply)

امیدوارم مفید واقع بشه و براتون آرزوی موفقیت میکنم :0013:

جعفری نیا
19-03-2015, 12:36
سلام
توی کیل برای من فایل stm32f10x.h روش یه شکل کلید هست و قفل شده و نمیتونم ویرایشش کنم چیکارش کنم قفل برداشته شه
ممنون

esisafa
19-03-2015, 13:37
هدرها غیر قابل ویرایش هستن. برای تنظیمات باید از فایلهای کانفیگ استفاده کنید.اصلا لازم نیست اون فایلها تغییر کنن.
اما برای تغییر فایلها میشه از ویرایشگرهای متن دیگه استفاده کرد. داخل پروژه کیل نمیشه چون خود کیل قفل میکنه که ناخواسته عوض نشن.

baha_manesh
16-04-2015, 15:49
با تشکر عالی بود حالا برای هر برنامه کافیه کتابخونه مورد نظرو اضافه کنیم و در main کدمونو بنویسیم؟

Doloop
17-04-2015, 04:21
با تشکر عالی بود حالا برای هر برنامه کافیه کتابخونه مورد نظرو اضافه کنیم و در main کدمونو بنویسیم؟

سلام خواهش میکنم
دقیقا درسته فقط میمونه انتخاب هدر مورد نظر و کد Main که قراره بنویسید :wink:

موفق باشید

baha_manesh
21-04-2015, 16:16
سلام مهندس من خواستم یه برنامه pwm بنویسم . همه هدرارو واسه کتابخونه فراخوندم که خیالم راحت باشه و در فایل main هم کد زیرو از یه برنامه دیگه کپی کردم . اما ارور میداد که توابع TIM_TimeBaseInitTypeDef رو نمیشناسه در حالیکه هدرشو آوردم تو کتابخونه مشکل از کجاست :؟

/****************************************Copyright (c)*********************************************** *******
** You can see links before reply
**
**--------------File Info---------------------------------------------------------------------------------
** File name: main.c
** Descriptions: The TIM application function
**
**--------------------------------------------------------------------------------------------------------
** Created by: AVRman
** Created date: 2010-10-30
** Version: v1.0
** Descriptions: The original version
**
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
************************************************** ************************************************** *****/


/* Includes ------------------------------------------------------------------*/
#include "stm32f10x.h"
#include <stdio.h>




/* Private function prototypes -----------------------------------------------*/
void GPIO_Configuration(void);
void NVIC_Configuration(void);
void TIM_Configuration(void);


/************************************************** *****************************
* Function Name : main
* Description : Main program
* Input : None
* Output : None
* Return : None
* Attention : None
************************************************** *****************************/
int main(void)
{
GPIO_Configuration();
NVIC_Configuration();
TIM_Configuration();
/* Infinite loop */
while (1){
}
}


/************************************************** *****************************
* Function Name : GPIO_Configuration
* Description : Configure GPIO Pin
* Input : None
* Output : None
* Return : None
* Attention : None
************************************************** *****************************/
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB , ENABLE);
/**
* LED1 -> PB0 LED2 -> PB1
*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}


/************************************************** *****************************
* Function Name : TIM_Configuration
* Description : TIM_Configuration program.
* Input : None
* Output : None
* Return : None
* Attention : None
************************************************** *****************************/
void TIM_Configuration(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , ENABLE);
TIM_DeInit(TIM2);
TIM_TimeBaseStructure.TIM_Period=2000;
TIM_TimeBaseStructure.TIM_Prescaler= (36000 - 1); /* ʱÖÓÔ¤·ÖƵÊý ÀýÈ磺ʱÖÓƵÂÊ=72MHZ/(ʱÖÓÔ¤·ÖƵ+1) */
TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DI V1; /* ²ÉÑù·ÖƵ */
TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterM ode_Up; /* ÏòÉϼÆÊýģʽ */
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);
TIM_ClearFlag(TIM2, TIM_FLAG_Update); /* Çå³ýÒç³öÖжϱêÖ¾ */
TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);
TIM_Cmd(TIM2, ENABLE); /* ¿ªÆôʱÖÓ */
}


/************************************************** *****************************
* Function Name : NVIC_Configuration
* Description : Configuration the nested vectored interrupt controller.
* Input : None
* Output : None
* Return : None
* Attention : None
************************************************** *****************************/
void NVIC_Configuration(void)
{
NVIC_InitTypeDef NVIC_InitStructure;

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriori ty = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}


#ifdef USE_FULL_ASSERT


/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
* @param file: pointer to the source file name
* @param line: assert_param error line source number
* @retval None
*/
void assert_failed(uint8_t* file, uint32_t line)
{
/* User can add his own implementation to report the file name and line number,
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */


/* Infinite loop */
while (1)
{
}
}
#endif


/************************************************** ************************************************** *****
END FILE
************************************************** ************************************************** *****/

Doloop
22-04-2015, 04:07
سلام

از برنامه نمیشه چیزی گفت اگر پروژه رو قرار بدید نیگاه میکنم و ایراد رو بهتون میگم:wink: اینطوری بهتره

موفق باشید ...

baha_manesh
22-04-2015, 13:22
سلام

از برنامه نمیشه چیزی گفت اگر پروژه رو قرار بدید نیگاه میکنم و ایراد رو بهتون میگم:wink: اینطوری بهتره

موفق باشید ...
مرسی مشکل حل شد:mrgreen: . نکتش تو همون قسمت آخر فیلم آموزشی بود. یعنی کتابخونه time فعال نشده بود

baha_manesh
23-04-2015, 15:37
سلام معذرت میخوام از کجا میشه رجیسترهاا رو خوند و فهمید چیه؟ مثلا برای usart

Doloop
23-04-2015, 20:50
سلام

باید برید تو قسمت دیباگ و قاعدتا باید بشه ولی متاسفانه کیل اونقدر باگ داره که من خیلی مواقع جواب نمیگیرم

نمیدونم چرا ؟ مثلا با میکرو STM32F103RBT جواب میده ولی با RET جواب نگرفتم

شما هم میکروتون هر چی هست یه تست بزنید ببینید میجوابه یا نه ...!!

موفق باشید....:wink:

alho777
30-05-2016, 16:02
اموزش نصب و راه اندازی صفر تا صد آخرین نسخه از نرم افزار Keil uVision5
You can see links before reply

rohol
01-08-2016, 14:04
با سلام و خسته نباشید. من کیل ورژن 5.20 رو نصب کردم و وقتی یک کد ساد رو کامپایل میکنم 2تا warning زیر رو میده. که همانطور کخ میبینید مربوط به فایل سیستم هست. البته وقتی متغییر i رو غیر فعال میکنم و توو تابع delay که در همین فایل هست static اول اون رو حذف میکنم دیگه هشداری نمیده...دلیلش چیه؟؟ تشکر
RTE\Device\LPC1788\system_LPC177x_8x.c(1285): warning: #177-D: function "_DelayMs" was declared but never referencedRTE\Device\LPC1788\system_LPC177x_8x.c(1 294): warning: #177-D: variable "i" was declared but never referenced

- - - Updated - - -

البته ببخشد یکم تند نوشتم یکم غلط املایی داره... با تشکر

Doloop
01-08-2016, 15:05
سلام
این دوتا هشدار برای اونه ک متغیر i تعریف کردی ولی توی برنامه ازش استفاده نکردی

اون تابع تاخیر رو هم ایجاد کردی و از اونم استفاده نکردی

همین

چیز خاصی نیست تاثیری توی برنامه شما نداره

rohol
03-08-2016, 15:57
/* مرسی تشکر.
ولی متغییر i در فایل سیستم توو تابع SystemInit_ExtMemCtl(void) وجود داره(وقتی آخرین ورژن کیل رو نصب کردم) که اگه اشتباه نکنم واسه استفاده و کنترل مموری خارجی هستش و از این متغیر استفاده ای نکرده و اون تابع تاخیر هم بود و با اینکه من اون رو اینکلود کردم بازهم وارنینگ داد... البته به قول شما مهم نیست(اروری نداده).
تشکر از توجهتون */

amiryazdani
06-02-2017, 19:45
سلام.پس اون قست از هدر stm32f10x که با توجه به میکرو uncoment میشه رو باید چه کار کرد