2013年7月17日 星期三

Microelectronic Circuits 2013-0717-3

教授課程_前往 98-1

September 17th, 2012
國立勤益科技大學電子工程系98(一)學年度工程數學教學內容綱要
開課年級2開課學期上學期預修課程微積分
科目名稱工程數學(一)修別必修學分數/學時數3/3
授課教師林水春
教科書 《Advanced Engineering Mathematics 5th edition》,Peter ONeil,東華
參考書 
評量方式作業 10%; 小考 20%; 期中考 30%; 期末考 30%; 其他 10% 
內容綱要1. 一階微分方程式  (下載講義) (作業及解答1-2) (作業及解答1-3) (作業及解答1-4)  (作業及解答1-5) (作業及解答1-6) (作業及解答1-7)2.二階及高階微分方程式 (下載講義) (下載作業及解答)3.拉普拉斯轉換 (下載講義) (下載作業及解答)4.向量分析  (下載講義) (下載作業及解答)5. 矩陣及聯立方程  (下載講義) 6. 行列式  (下載講義) 7. 固有值、固有向量 (下載講義) 

  • 國立勤益科技大學電子工程系98(一)學年度教學內容綱要
開課年級3開課學期上學期預修課程微積分、工程數學
科目名稱線性代數修別選修學分數/學時數3/3
授課教師林水春
教科書Steve J. Leon, Linear Algebra with Applications, 7th, ed. Prentice-Hall. 2006.
參考書1. B.Noble J.W. Danniel. Applied Linear Algebra,3rd,ed.Prentice-Hall. 1988  
2. Larson and Edwards. Elementary Linear Algebra, 5th,ed. Addison. Houghton Mifflin(高立圖書代理) 
3. Gareth Williams, Linear Algebra with application, Jones and Bartlett, 2005 (滄海圖書代理).
評量方式作業 10%; 小考 10%; 期中考 30%; 期末考 40%; 其他 10% 
內容綱要1. 矩陣與方程式系統  (下載講義) (關鍵辭)2. 行列式  (下載講義)3. 向量空間   (下載講義)4. 線性轉換  (下載講義)5. 正交性   (下載講義)6. 特徵值與特徵向量 (下載講義)7. 數值線性代數

  • 國立勤益科技大學電子工程系98(一)學年度教學內容綱要
開課年級2開課學期上學期預修課程基本電學、微積分
科目名稱電子學 (一)修別必修學分數/學時數3/3
授課教師林水春、鄭清海、陳英傑
教科書《Microelectronic Circuits 5th edition》,Sedra/Smith,台北圖書  
參考書 
評量方式作業 10%; 小考 10%; 期中考 30%; 期末考 40%; 其他 10% 
內容綱要本課程之教學目標,主要使學生瞭解電子電路中之:(1)電子學簡介:信號、信號頻譜、類比數位信號、放大器、放大器電路模型、放大器頻率響應、數位邏輯反向器。 (下載講義)(2)運算放大器:理想運算放大器、理想運算放大器電路容量分析、非反向器結構、運算放大器電路實例、運算放大器大信號操作。(下載講義)(3)二極體:接合面二極體端子特性、二極體物理操作、二極體電路分析、小信號模型及其應用、操作於反向崩潰區域、整流電路、限制與箝制電路。(下載講義)(4)雙極介面電晶體:pnp電晶體、電路符號與協定、電晶體放大器、小信號等效電路模型、電晶體開關、基本雙極介面電晶體邏輯反向器。(下載講義A)  (下載講義B)(5)場效電晶體:空乏型MOSFET、MOS放大電路之偏壓、CMOS數位邏輯反向器、MOSFET類比開關、MOSFET內部電容與高頻模型、接合面場效電晶體。(下載講義A)  (下載講義B)
 
 
 

Microelectronic Circuits 2013-0717-2

¨EE 359  Electronic Circuits¨  
Fall  2007
ª COURSE WEB PAGE:

 



EE359 Lectures starting August 27, 2007

Powerpoint format  Lecture 1   August 27
Powerpoint format Lecture 2    August 31
Powerpoint format Lecture 3    September 7
Powerpoint format Lecture 4    September 10
Powerpoint format. Lecture 5  September 14
Powerpoint format. Lecture 6  September 17
Powerpoint format. Lecture 7 September 21
Powerpoint format.
 Lecture 8 February 28
Powerpoint format.
 Lecture 9 March 6
Powerpoint format. Lecture 10 March 8
Powerpoint format. Lecture 11 March 20
Powerpoint format. Lecture 12 March 22
Powerpoint format. Lecture 13
Powerpoint format. Lecture 14
Powerpoint format. Lecture 15
Powerpoint format. Lecture 16
Powerpoint format. Lecture 17
Powerpoint format. Lecture 18
Powerpoint format. Lecture 19
Powerpoint format. Lecture 20 (Spice Review)
Powerpoint format.
 Lecture 21
PDF (Acrobat) format. Lecture 22

EE359 HW assignments and solns:
PDF format HW 1: 2.100, 3.18, 3.19, 3.26

EE359 HW assignments and solns:
PDF format HW 2 (old): 3.56, 3.58, 5.10, 5.31
PDF format HW 2 (old): 3.56, 3.64,3.76,3.100?
New homework Fall 2007:
PDF format HW 2 (new))3.52, 3.72, 3.66 , 3.98


EE359 HW assignments and solns:
PDF format HW 3:
New homework Fall 2007
PDF format HW 3 (new) 5.63, 5.78, 5.96, 5.99



Examples: 5.18,5.26,5.33,5.54  PDF format

EE359 HW assignments and solns:
PDF format HW 4:


Extra Problems: 5.61,5.74,5.93,5.100  PDF format

EE359 HW assignments and solns:
PDF format HW 5: 
7.11,7.21,7.54,7.89


Extra Problems  PDF format  

EE359 HW assignments and solns:
 PDF format HW 6:  


Extra Problems PDF format   

EE359 HW assignments and solns:
PDF format HW 7   
8.18,8.45,8.63,8.70 due March 27

EE359 HW assignments and solns:
PDF format HW 8

EE359 HW assignments and solns:
PDF format HW 9

EE359 HW assignments and solns:
PDF format HW 10

 SCHEDULE Mondays    1:45PM-3 PM     Morton 205
Fridays   1:45 PM-3 PM      Morton 205


COORDINATOR: Dr. Uf Tureli, utureli@stevens-tech.edu
PHONE: 201-216 5603
OFFICE HOURS: Tuesdays 5-6pm, Wednesdays 3-4pm  at  Burchard 202 other times by appointment.
Please contact in advance for appointments outside of office hours. You may use e-mail to request appointments.
TEXT:  A. S. Sedra and K. C. Smith, Microelectronic Circuits, 5th Edition, Oxford University Press, 2003.
 PREREQUISITES: E246.   
COURSE DESCRIPTION:   This is the electronics course for electrical engineering students to provide an in-depth understanding of electronic circuit design and analysis. The primary emphasis of this class will be to cultivate an understanding of how modern electronic circuits work. Specific topics to be covered include differential and multistage amplifiers, amplifier frequency response and feedback, output stages, power amplifiers, a selection of analog integrated circuit topics, filters and tuned amplifiers, waveform-shaping circuits, and MOS digitalcircuits. This corresponds to Chapters 6, 7, 8, 9 and 11 inSedra and Smith.

Assignments and projects:  Hands on learning with computer based learning approaches will include simulation in the SPICE circuit simulation program. Several lab and homework assignments in this class will require the use of   a version of SPICE that runs under Windows. The student edition is inside the book cover.  
ASSESSMENT / GRADING:


Project
(computer programming, brief in-class presentation and formal report)
10%

Homework
(analytical problems 30 % and computer programming 10% )
20%

Exams
Midterm (2)
20%


Final 
30%

Reading  
You are strongly encouraged to read ahead of the lectures. After each lecture, you should review the corresponding material in the textbook and then read the next section or two before the following lecture. This familiarization process will allow you to digest information from the lectures more easily.
The following sections of Sedra and Smith will be covered in this class: A quick review of chapters 1, 2, 4, and 5, then 7,8,12,13,14 

Homework
Homework problems will be assigned weekly. These problem sets will be collected and graded. Homework assignments turned in up to 24 hours late will be penalized 25% (i.e., multiply your score by 0.75). Assignments turned in more than 24 hours late will not be accepted. Your lowest homework grade will be dropped. Unless otherwise specified, homework assignments will be handed in during Friday’s lecture.
OTHER COURSE INFORMATION:  You are responsible for all material covered in class, in assigned readings, and on homework assignments. You are expected to attend class. I encourage you to come to my office hours whenever you have any questions concerning the course. I enjoy working with students, and am happy to meet with you.
If you are going to miss an exam, you must make prior arrangements with me in order to take the exam before the scheduled date. Homework will be assigned and graded. You are encouraged to form groups to work together on homework to solidify your knowledge of the material.

Microelectronic Circuits 2013-0717-1






EECS 312- Related Links




Microelectronic Circuits, 5e
 



Our textbook website:





 



Some links on the history of transistors:










 





Some vacuum tube websites:







 



Some integrated circuit websites:







































2013年6月10日 星期一

Arduino Digital 7-Segment Thermometer

Hello everybody! I will be showing you how to make a digital 7-segment thermometer using the LM335 temperature sensor.

This a guide for an Arduino version, but I am working on a mini ATtiny84 version. Once I get that working, I will post another Instructable on how to make it.

I'm sure you could make this same thermometer with an LM35 also, if that's what you have, and you probably won't have to modify the code.

This is an entry in both the LED contest with Elemental LED and the Hurricane Lasers contest, so if you like it, vote for it! Thanks!

Also, I am considering starting an electronics kit business to sell kits for the Instructables that I make, so if you like the idea, drop a comment or PM me!

Step 1: Parts list

Here are the things you will need for this project. You can get all these parts from a wholesale supplier like Mouser or Digi-Key for around $10-$15 or less, except for the Arduino board. You can get this from Mouser for around $30.

Parts:
1x Arduino Uno/Duemilanove/maybe Diecimila or equivalent
1x LM335 temperature sensor (I'm sure you could make it work with a LM35 too)
2x Single digit 7-segment display, common cathode (or a single 2 digit one)
1x 2.2k ohm resistor (not sure if you need this if you are using an LM35)
Jumper wires

Tools:
USB A-B cable
Breadboard

Step 2: Program the Arduino

The code I wrote requires you to have the Arduino Seven Segment library installed. To do this, go here and download all the files by going to "File>Download" at the top of the page.

Then locate you Arduino sketchbook folder (should be located in "Documents>Arduino" on Windows) and create a folder called "hardware" if there isn't already one. Go in that folder, and paste the folder you downloaded before into the "hardware" folder.

It should not be in a .zip or .rar format, which it will most likely come as when you download it, you must extract the entire folder and place it in the hardware folder.


After you installed the library, upload the code below to the Arduino board, and proceed to the next step.


#include "SevSeg.h"

SevSeg sevseg;

int tempUnits = fahrenheit; //which unit of temperature do you prefer?

int refreshTime = 5000; //how many seconds should it wait before it checks and displays the temp again? 1000 = 1 second

unsigned long timer;
float celsius = 0, kelvin = 0, fahrenheit = 0;

void setup()
{
  sevseg.Begin(0,2,3,4,5,6,7,8,9,10,11,12,13);
}

void loop()
{
  sevseg.PrintOutput();

  //Reads the input and converts it to Kelvin degrees
  kelvin = analogRead(0) * 0.004882812 * 100;

  //Converts Kelvin to Celsius minus 2.5 degrees error
  celsius = kelvin - 2.5 - 273.15;

  //Converts Celsius to Fahrenheit minus 2.5 degrees error
  fahrenheit = ((kelvin - 2.5) * 9 / 5) - 459.67;
  
  unsigned long mils=millis();
  if (mils-timer>=refreshTime) {
    timer=mils;
    //Print teperature to the displays
  sevseg.NewNum(tempUnits,(byte) 2);
  }
}

Step 3: Modify the code to use a common anode display (optional)

Changing the code to work with a common anode display is simple. Change this line of code:

sevseg.Begin(0,2,3,4,5,6,7,8,9,10,11,12,13);

to:

sevseg.Begin(1,2,3,4,5,6,7,8,9,10,11,12,13);

Step 4: Change the units and refresh time (optional)

To change the units of the temperature displayed to Celsius or back to Fahrenheit, change the line of code at the top that says:

int tempUnits = fahrenheit;

to:

int tempUnits = celsius;

if you prefer Celsius.

To change the rate at which the display updates the temperature, change the line of code at the top that says:

int refreshTime = 5000;

to:

int refreshTime = <however many seconds you want it to wait before updating * 1000>;

The code is set to refresh every 5 seconds by default. If you put a number that is too low, it will update so fast that you won't be able to read it.

Step 5: Put it together!

Here is the schematic for the thermometer. I made mine on a breadboard.

Step 6: Done!

Arduino Digital 7-Segment Thermometer

This a guide for an Arduino version, but I am working on a mini ATtiny84 version. Once I get that working, I will post another Instructable on how to make it.
I’m sure you could make this same thermometer with an LM35 also, if that’s what you have, and you probably won’t have to modify the code.
Segment Thermometer
This is an entry in both the LED contest with Elemental LED and the Hurricane Lasers contest, so if you like it, vote for it! Thanks!
Also, I am considering starting an electronics kit business to sell kits for the Instructables that I make, so if you like the idea, drop a comment or PM me!

Step 1: Parts list

Here are the things you will need for this project. You can get all these parts from a wholesale supplier like Mouser or Digi-Key for around $10-$15 or less, except for the Arduino board. You can get this from Mouser for around $30.
Tools:
USB A-B cable
Breadboard

Step 2: Program the Arduino

Schematic Segment Thermometer

The code I wrote requires you to have the Arduino Seven Segment library installed. To do this, go here and download all the files by going to “File>Download” at the top of the page.
Then locate you Arduino sketchbook folder (should be located in “Documents>Arduino” on Windows) and create a folder called “hardware” if there isn’t already one. Go in that folder, and paste the folder you downloaded before into the “hardware” folder.
It should not be in a .zip or .rar format, which it will most likely come as when you download it, you must extract the entire folder and place it in the hardware folder.
After you installed the library, upload the code below to the Arduino board, and proceed to the next step.
#include “SevSeg.h”
SevSeg sevseg;
int tempUnits = fahrenheit; //which unit of temperature do you prefer?
int refreshTime = 5000; //how many seconds should it wait before it checks and displays the temp again? 1000 = 1 second
unsigned long timer;
float celsius = 0, kelvin = 0, fahrenheit = 0;
void setup()
{
sevseg.Begin(0,2,3,4,5,6,7,8,9,10,11,12,13);
}
void loop()
{
sevseg.PrintOutput();
//Reads the input and converts it to Kelvin degrees
kelvin = analogRead(0) * 0.004882812 * 100;
//Converts Kelvin to Celsius minus 2.5 degrees error
celsius = kelvin – 2.5 – 273.15;
//Converts Celsius to Fahrenheit minus 2.5 degrees error
fahrenheit = ((kelvin – 2.5) * 9 / 5) – 459.67;
unsigned long mils=millis();
if (mils-timer>=refreshTime) {
timer=mils;
//Print teperature to the displays
sevseg.NewNum(tempUnits,(byte) 2);
}
}

Step 3: Modify the code to use a common anode display (optional)

Changing the code to work with a common anode display is simple. Change this line of code:
sevseg.Begin(0,2,3,4,5,6,7,8,9,10,11,12,13);
to:
sevseg.Begin(1,2,3,4,5,6,7,8,9,10,11,12,13);

Step 4: Change the units and refresh time (optional)

To change the units of the temperature displayed to Celsius or back to Fahrenheit, change the line of code at the top that says:
int tempUnits = fahrenheit;
to:
int tempUnits = celsius;
if you prefer Celsius.
To change the rate at which the display updates the temperature, change the line of code at the top that says:
int refreshTime = 5000;
to:
int refreshTime = <however many seconds you want it to wait before updating * 1000>;

The code is set to refresh every 5 seconds by default. If you put a number that is too low, it will update so fast that you won’t be able to read it.

  清除項目編譯快取 執行 flutter clean 重新取得套件依賴 執行 flutter pub get 完整重新編譯並執行 flutter run 1. 新增專案套件 (pubspec.yaml) 在 Flutter 專案根目錄下的 pubspec.yaml 中,新增 ...