گروه فنی مهندسی آرکام

پروژه های دانشجویی ، آموزش ، مشاوره ، فروش آثار

گروه فنی مهندسی آرکام

پروژه های دانشجویی ، آموزش ، مشاوره ، فروش آثار

گروه فنی مهندسی آرکام

گرداننده و نگارنده : محمد نوری

البرز ، کرج ، گلشهر

09125623558
Nouri.Iut@Gmail.Com

جهت حمایت از این وبلاگ، ما را به یک فنجان چای داغ مهمان کنید.
6273-8111-1003-9762

دنبال کنندگان ۳ نفر
این وبلاگ را دنبال کنید

تبلیغات

آخرین نظرات

پیوندها

#ifndef __LWIPOPTS_H__

#define __LWIPOPTS_H__

 

/**

 * SYS_LIGHTWEIGHT_PROT==1: if you want inter-task protection for certain

 * critical regions during buffer allocation, deallocation and memory

 * allocation and deallocation.

 */

#define SYS_LIGHTWEIGHT_PROT    0

 

#define ETHARP_TRUST_IP_MAC     0

#define IP_REASSEMBLY           0

#define IP_FRAG                 0

#define ARP_QUEUEING            0

#define TCP_LISTEN_BACKLOG      1

 

/**

 * NO_SYS==1: Provides VERY minimal functionality. Otherwise,

 * use lwIP facilities.

 */

#define NO_SYS                  0

int main(void)

{

  // add a long delay wait for the system to start up!

  unsigned int i,j;

  for(i=0;i<50;i++)

  {

    for(j=0;j < 65500;j++);

  }

 

  /* Initialize others */

   

  /* Infinite loop */

  while (1)

  { 

  }  

}

مدت زمان مورد نیاز برای بالا آمدن و شروع به کار قطعات ممکن است با یکدیگر متفاوت باشند... از جمله: PHYها... سوئیچ ها... و هر چیز مربوط به Ethernet...

با فراخوانی تابع vTaskStartScheduler() در تابع main کنترل روند اجرای برنامه را به FreeRTOS می سپاریم.. خب! برنامه باید در حالت non-RTOS نیز عملکرد صحیحی داشته باشد... از این امر باید مطمئن شوید...

سیستم عامل زمانبندی

خب! برای زمانبدی به یک تایمر احتیاج داریم...

EVERY RTOS PORT USES A TIMER TO GENERATE A PERIODIC TICK INTERRUPT. MANY PORTS USE ADDITIONAL INTERRUPTS TO MANAGE CONTEXT SWITCHING...

 

FreeRTOS - Basic directory structure

The core RTOS code is contained in three files, which are called tasks.c, queue.c and list.c. These three files are in the FreeRTOS/Source directory. The same directory contains two optional files called timers.c and croutine.c which implement software timer and co-routine functionality respectively.

 

CMSIS... مجموعه ای از پروژه ها... لایه های نرم افزاری مستقل از تراشه... (Vendor-Independent HAL)... یعنی مجموعه ای از توابع... یا به عبارت دیگر، واسط نرم افزاری (Software API) بین برنامه نویس (Developer)، هستهCortex-M ، سیستم عامل و قطعات جانبی (Peripherals) میکروهای Cortex است... که کار با امکانات/قطعات جانبی را ساده می کند... زمان سازگاری کد در هنگام تعویض میکرو را کاهش می دهد (Software Re-use)... خب! برای این منظور! هر شرکت (Vendor) موظف است!، فایل های مورد نیازی را... برای تبعیت از این استاندارد کدنویسی... برای میکروهای خود ارائه دهد...

برای شروع برنامه نویسی میکروهای Cortex، تنها استفاده از بسته CMSIS، کافی است؟ نخیر!... هر سازنده باید لایه نرم افزاری مختص به خودش را ارائه کند، مانند ST HAL... از قبل هم به یاد داریم که ST Standard Peripheral Library برای دسترسی به رجیسترها از CMSIS Layer استفاده می کرد...

خب! برای NXP چی داریم؟ LPCOpen...

Type: D4612AAA18

2.4 watts

12 volts

1800 RPM

قیمت: 40،000 تومان

اگر هوای داخل یخچال گرم است... در آن به راحتی باز می شود... مواد غذایی داخل آن کپک می زند...

هزینه رفت و آمد: 20،000 تومان

دستمزد: 120،000 تومان

 تعمیرکار می شدم، وضیعتم (مالی!) بهتر بود...

Standalone/FreeRTOS

?

 

 

Raw/Socket API

?

 

 

DHCP Support...

?

UDP Support...

?

Broadcast Support...

?

==============================

  R E L E A S E    N O T E S

==============================

Version 1.00, 15 Mehr, 1395

------------------------------

   Fixes:

   =======

   1. Problem:

      Cause:

      Change:

      Impact:

             None.

 

   Enhancements:

   =============

   1. Request:

      Change:

      Impact:

             None

A CAN interface board for the PCI bus...

CAN Controller: SJA1000 from Philips, with 64-byte receive FIFO...

 

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

----------------------------------------------------------------------------------

entity sja1000_can_ctrl is

  port

  (     

    clk              : in      std_logic;

    rst              : in      std_logic;

   

    CAN_INTL         : in      std_logic;

    CAN_AD           : inout   std_logic_vector(7 downto 0);

    CAN_ALE          : out     std_logic;

    CAN_CSL          : out     std_logic;

    CAN_RDL          : out     std_logic;

    CAN_WRL          : out     std_logic;

    CAN_RSTL         : out     std_logic;

   

مقاومت های Pull-Up روی خطوط تفاضلی RX و TX... 49.9 اهم...

Pin 7 is a no-connect (NC) for LAN9500A, but may be connected to VDD33A for backward compatibility with LAN9500 designs...

TXCT و RXCT را با مقاومت صفر اهم به VDD33A و با خازن n22 به زمین وصل کن...

http://ww1.microchip.com/downloads/en/DeviceDoc/9500a_sch.pdf

- All user generated source files (*.c, *.cpp, *.h, *.inc, *.s)

- Project file: Project.uvprojx (is used to build the project from scratch)

- Project options file: Project.uvoptx (contains information about the debugger and trace configuration)

- Project file for multi-project workspaces: Project.uvmpw

- Configuration files for the run-time environment that are copied to the project (all files below .\RTE)

- List of #includes created by software components: RTE\RTE_Components.h file

- Device configuration file: for example RTE\Device\LPC1857\RTE_Device.h

- Linker control file (Project.sct) if created manually

- All relevant Pack files (for example ARM::CMSIS, Keil::Middleware, Device Family Packs, etc.)

 ما بقی فایل ها را پاک کن!

++Notepadرا بازکن... Project.uvprojx، Project.uvoptx و Project.uvmpw...

Ctrl+H...

پول... پول... پول... دریافتی به موقع... نظم... نظم... نظم...

چند ماهی است در شرکتی کار می کنم... اما انگیزه ای برای...

بی نظمی مسری است... وقتی بی نظمی می بینی... ناخودآگاه بی نظم می شوی...

هم شرکت متضرر می شود و هم خودت...

ادامه کار هم سخت...

اصلا نمی دانم چی گرفتم... چی دادم... چی کردم... چی گفتم... چی بگم... 

خب!... وقتش... یک فکرهایی باید کنم...

RS-232 Logic and Voltage Levels

Data Circuits

Control Circuits

Voltage

0 (Space)

Asserted

+3 to +15 V

1 (Mark)

Deasserted

−15 to −3 V

 

Pin Functions for RS-232

TXD (pin 3)

Serial Data Output

RXD (pin 2)

Serial Data Input

GND (pin 5)

Ground

 

Specifications

RS-232

RS-485

Mode of Operation

Single-Ended

Differential

Number of Drivers / Receivers on One Line

1 Driver
1 Receiver

32 Drivers*
32 Receivers

Maximum Cable Length

50 ft (2500 pF)

4000 ft

Maximum Data Rate (at max cable length)

160 kbits/s (can be up to 1Mbit/s)

10 Mbit/s

...خط انتقال اطلاعات از UART زمانی که از آن استفاده نمی شود، در حالت High قرار می گیرد. برای شروع انتقال اطلاعات، این خط برای مدت یک کلاک ساعت در وضعیت Low قرار می گیرد. زمانی که دستگاه دریافت کننده یک تغییر سطح ولتاژ از حالت High به Low را تشخیص دهد، شروع به دریافت داده ها با Baud Rate مشخص می شود...

 خب!...برای اجتناب از تفسیر نادرست سطح ولتاژ پایه RX به عنوان یک مقدار جدید، باید این پایه وضعیت پیش فرض متناسبی با کاربردمان داشته باشد. در اکثر بوردهای مبتنی بر ARM این پایه را بصورت داخلی از طریق کد Pull-Up کرده یا مقاومت Pull-Up خارجی برای آن خط در نظر گرفته می شود... این مسئله هنگام استفاده UART به عنوان درگاه Debug سیستم می تواند مشکل آفرین... به عنوان فشرده شدن یک کلید در شروع کار تفسیر شده ... و مانع بالا آمدن سیستم... و توقف آن در Bootloader شود... 

http://www.digikey.com/en/articles/techzone/2012/apr/protecting-inputs-in-digital-electronics

LPC1768

- Max. CPU speed: 100 MHz

- Flash: 512 kB

- Total SRAM: 64 kB

 

IROM1 : 0x0000 0000 - 0x0008 0000 : 512 kB on-chip flash

IRAM1 : 0x1000 0000 - 0x1000 8000 :  32 kB local static RAM

IRAM2 : 0x2007 C000 - 0x2008 4000 :  32 kB AHB SRAM (2 blocks of 16 kB)

 

RAM usage = ZI-data + RW-data

Flash usage = Code + RO-data + RW-data

 

/*****************************************************

This program was produced by the

CodeWizardAVR V2.05.3 Standard

Automatic Program Generator

© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

http://www.hpinfotech.com

 

Project :

Version :

Date    : 02/24/2016

Author  : Mohammad Nouri

Company :

Comments:

In computer networking, RWIN (TCP Receive Window) is the amount of data that a computer can accept without acknowledging the sender.

If the sender has not received acknowledgement for the first packet it sent, it will stop and wait and if this wait exceeds a certain limit, it may even retransmit.

This is how TCP achieves reliable data transmission.

UDP, unlike TCP is a connectionless protocol and will just keep sending traffic. There is no window size, for this reason you might want to limit your UDP traffic...

 

شایان ذکر است که می توان از مقدار TCP Window Size برای شناسایی نوع سیستم عامل استفاده نمود. به این روش، انگشت نگاری از سیستم عامل (OS Fingerpringring) می گویند. این مقدار را می توان به سادگی با پایش ترافیک (Passive Analysis)، در سرآیند IP اولین بسته یک جلسه TCP مشاهده نمود. دلیل اصلی این که سیستم عامل ها دارای مقادیر یکسانی نبوده و متفاوت هستند، در این نکته نهفته است که در RFC مربوط به TCP/IP مقادیر پیش فرضی در این خصوص قید نشده است و هر سیستم عامل عدد مخصوص به خود را دارد.

The lwIP provides two APIs for use by applications:

RAW API: The raw API is customized for high performance and lower memory overhead. The limitation of raw API is that it is callback-based, and consequently does not provide portability to other TCP stacks.

Best Performance & Code Size

Complex For Application Development

 

Socket API: The socket API provides a BSD socket-style interface and is very portable; however, this mode is not as efficient as raw API mode in performance and memory requirements.

BSD Socket-style API (Open-Read-Write-Close)

Very Portable 

مقدمه

هدف از ارائه این گزارش بررسی الگوریتم‌های مرتب‌سازی بهینه‌ و کارامدِ قابل پیاده‌سازی روی FPGA است. در این پروژه داده‌هایی (10 عدد صحیح 18 بیتی) از ورودی خوانده شده و از طریق الگوریتم‌های مرتب‌سازی به صورت صعودی مرتب می‌شوند. منابع موجود برای پیاده‌سازی و بررسی الگوریتم‌های مرتب‌سازی شامل برنامه‌های‌ VHDL است. در این گزارش به بررسی الگوریتم‌های پیاده‌سازی شده می‌پردازیم.

 مقایسه الگوریتم‌های مرتب‌سازی

برای پیاده‌سازی هر یک از الگوریتم‌های مرتب‌سازی در FPGA ممکن است روش‌های مختلفی وجود داشته باشد. این روش‌ها را می‌توان بر اساس معیار‌های زیر با یکدیگر مقایسه کرد:

زمان مورد نیاز برای طراحی و پیاده‌سازی

انعطاف‌پذیری

منابع FPGA مورد استفاده

سرعت اجرا

 

... با ما تماس بگیرید...