markdown:
# TECHNICAL SPECIFICATION
Chia sẻ: Orchid Orchid | Ngày: | Loại File: PDF | Số trang:48
383
lượt xem 142
download
lượt xem 142
download
![](http://image.tlvnimg.com/document/thumbnail/2009/20090318/orchid/80x100/7463_isots169492002_english_ve.jpg)
##
TECHNICAL SPECIFICATION
Mô tả tài liệu
[Vui lòng tải xuống để xem tài liệu đầy đủ](javascript:void(0);)
Download
![](http://static.tlvnimg.com/b2013az/templates/version1/default/images/down16x21.png)
Bản yêu cầu về áp dụng hệ thống quản lý chất lượng ISO 9001:2000 trong lĩnh vực sản xuất ô tô và phụ tùng liên quan.
Chủ đề:
Bình luận(0)
[Đăng nhập để gửi bình luận!](javascript:void(0);)
##
Nội dung Text: TECHNICAL SPECIFICATION
- TECHNICAL ISO/TS SPECIFICATION 16949 Second edition 2002-03-01 Quality management systems — Particular requirements for the application of ISO 9001:2000 for automotive production and relevant service part organizations Systèmes de management de la qualité — Exigences particulières pour l'application de l'ISO 9001:2000 pour la production de série et de pièces de rechange dans l'industrie automobile Reference number ISO/TS 16949:2002(E) © ISO 2002
- ISO/TS 16949:2002(E) PDF disclaimer This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat accepts no liability in this area. Adobe is a trademark of Adobe Systems Incorporated. Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below. © ISO 2002 All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISO's member body in the country of the requester. ISO copyright office Case postale 56 • CH-1211 Geneva 20 Tel. + 41 22 749 01 11 Fax + 41 22 749 09 47 E-mail copyright@iso.ch Web www.iso.ch Printed in Switzerland The content inside the boxed text of this document is ISO 9001:2000 text and is protected by the above copyright statement. The text outside the boxes has been originated by the International Automotive Task Force. Copyright for this text is held by ANFIA, CCFA/FIEV, SMMT, VDA (see below) and the car manufacturers DaimlerChrysler, Ford Motor Company, General Motors Corp. Neither this Technical Specification nor any extract from it may be reproduced in a retrieval system or transmitted in any form or by any means, electronic, photocopying, recording or otherwise without prior written permission being secured. Requests for permission to reproduce and/or translate non-boxed text should be addressed to one of the addresses below: International Automotive Oversight Bureau (IAOB/USA) Associazione Nazionale Fra Industrie Automobilistiche (ANFIA/Italy) Comité des Constructeurs Français d'Automobiles (CCFA/France) Fédération des Industries des Équipements pour Véhicules (FIEV/France) Society of Motor Manufacturers and Traders (SMMT/UK) Verband der Automobilindustrie - Qualitätsmanagement Center (VDA-QMC/Germany) © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. ii – All rights reserved
- ISO/TS 16949:2002(E) Contents Page Foreword vii Remarks for certification viii Introduction ix 0.1 General ix 0.2 Process approach ix 0.3 Relationship with ISO 9004 xi 0.3.1 IATF Guidance to ISO/TS 16949:2000 xi 0.4 Compatibility with other management systems xi 0.5 Goal of this Technical Specification xii 1 Scope 1 1.1 General 1 1.2 Application 1 2 Normative reference 2 3 Terms and definitions 2 3.1 Terms and definitions for the automotive industry 2 4 Quality management system 3 4.1 General requirements 3 4.1.1 General requirements — Supplemental 4 4.2 Documentation requirements 4 4.2.1 General 4 4.2.2 Quality manual 5 4.2.3 Control of documents 5 4.2.3.1 Engineering specifications 5 4.2.4 Control of records 6 4.2.4.1 Records retention 6 5 Management responsibility 6 5.1 Management commitment 6 5.1.1 Process efficiency 6 5.2 Customer focus 7 5.3 Quality policy 7 5.4 Planning 7 5.4.1 Quality objectives 7 5.4.1.1 Quality objectives — Supplemental 7 5.4.2 Quality management system planning 7 5.5 Responsibility, authority and communication 8 5.5.1 Responsibility and authority 8 5.5.1.1 Responsibility for quality 8 5.5.2 Management representative 8 5.5.2.1 Customer representative 8 5.5.3 Internal communication 8 5.6 Management review 9 5.6.1 General 9 5.6.1.1 Quality management system performance 9 © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved iii
- ISO/TS 16949:2002(E) 5.6.2 Review input 9 5.6.2.1 Review input — Supplemental 9 5.6.3 Review output 10 6 Resource management 10 6.1 Provision of resources 10 6.2 Human resources 10 6.2.1 General 10 6.2.2 Competence, awareness and training 10 6.2.2.1 Product design skills 11 6.2.2.2 Training 11 6.2.2.3 Training on the job 11 6.2.2.4 Employee motivation and empowerment 11 6.3 Infrastructure 11 6.3.1 Plant, facility and equipment planning 11 6.3.2 Contingency plans 12 6.4 Work environment 12 6.4.1 Personnel safety to achieve product quality 12 6.4.2 Cleanliness of premises 12 7 Product realization 12 7.1 Planning of product realization 12 7.1.1 Planning of product realization — Supplemental 13 7.1.2 Acceptance criteria 13 7.1.3 Confidentiality 13 7.1.4 Change control 13 7.2 Customer-related processes 13 7.2.1 Determination of requirements related to the product 13 7.2.1.1 Customer-designated special characteristics 14 7.2.2 Review of requirements related to the product 14 7.2.2.1 Review of requirements related to the product — Supplemental 14 7.2.2.2 Organization manufacturing feasibility 14 7.2.3 Customer communication 14 7.2.3.1 Customer communication — Supplemental 15 7.3 Design and development 15 7.3.1 Design and development planning 15 7.3.1.1 Multidisciplinary approach 15 7.3.2 Design and development inputs 15 7.3.2.1 Product design input 16 7.3.2.2 Manufacturing process design input 16 7.3.2.3 Special characteristics 16 7.3.3 Design and development outputs 16 7.3.3.1 Product design outputs — Supplemental 17 7.3.3.2 Manufacturing process design output 17 7.3.4 Design and development review 17 7.3.4.1 Monitoring 17 7.3.5 Design and development verification 18 7.3.6 Design and development validation 18 7.3.6.1 Design and development validation — Supplemental 18 © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. iv – All rights reserved
- ISO/TS 16949:2002(E) 7.3.6.2 Prototype programme 18 7.3.6.3 Product approval process 18 7.3.7 Control of design and development changes 19 7.4 Purchasing 19 7.4.1 Purchasing process 19 7.4.1.1 Regulatory conformity 19 7.4.1.2 Supplier quality management system development 19 7.4.1.3 Customer-approved sources 19 7.4.2 Purchasing information 20 7.4.3 Verification of purchased product 20 7.4.3.1 Incoming product quality 20 7.4.3.2 Supplier monitoring 20 7.5 Production and service provision 21 7.5.1 Control of production and service provision 21 7.5.1.1 Control plan 21 7.5.1.2 Work instructions 21 7.5.1.3 Verification of job set-ups 21 7.5.1.4 Preventive and predictive maintenance 22 7.5.1.5 Management of production tooling 22 7.5.1.6 Production scheduling 22 7.5.1.7 Feedback of information from service 22 7.5.1.8 Service agreement with customer 22 7.5.2 Validation of processes for production and service provision 23 7.5.2.1 Validation of processes for production and service provision — Supplemental 23 7.5.3 Identification and traceability 23 7.5.3.1 Identification and traceability — Supplemental 23 7.5.4 Customer property 24 7.5.4.1 Customer-owned production tooling 24 7.5.5 Preservation of product 24 7.5.5.1 Storage and inventory 24 7.6 Control of monitoring and measuring devices 24 7.6.1 Measurement system analysis 25 7.6.2 Calibration/verification records 25 7.6.3 Laboratory requirements 25 7.6.3.1 Internal laboratory 25 7.6.3.2 External laboratory 25 8 Measurement, analysis and improvement 26 8.1 General 26 8.1.1 Identification of statistical tools 26 8.1.2 Knowledge of basic statistical concepts 26 8.2 Monitoring and measurement 26 8.2.1 Customer satisfaction 26 8.2.1.1 Customer satisfaction — Supplemental 26 8.2.2 Internal audit 27 8.2.2.1 Quality management system audit 27 8.2.2.2 Manufacturing process audit 27 8.2.2.3 Product audit 27 © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved v
- ISO/TS 16949:2002(E) 8.2.2.4 Internal audit plans 27 8.2.2.5 Internal auditor qualification 28 8.2.3 Monitoring and measurement of processes 28 8.2.3.1 Monitoring and measurement of manufacturing processes 28 8.2.4 Monitoring and measurement of product 29 8.2.4.1 Layout inspection and functional testing 29 8.2.4.2 Appearance items 29 8.3 Control of nonconforming product 29 8.3.1 Control of nonconforming product — Supplemental 30 8.3.2 Control of reworked product 30 8.3.3 Customer information 30 8.3.4 Customer waiver 30 8.4 Analysis of data 30 8.4.1 Analysis and use of data 31 8.5 Improvement 31 8.5.1 Continual improvement 31 8.5.1.1 Continual improvement of the organization 31 8.5.1.2 Manufacturing process improvement 31 8.5.2 Corrective action 31 8.5.2.1 Problem solving 32 8.5.2.2 Error-proofing 32 8.5.2.3 Corrective action impact 32 8.5.2.4 Rejected product test/analysis 32 8.5.3 Preventive action 32 Annex A (normative) Control plan 33 A.1 Phases of the control plan 33 A.2 Elements of the control plan 33 Bibliography 34 NOTE In this table of contents, ISO 9001:2000 headings are normal type face, IATF headings are in italics. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. vi – All rights reserved
- ISO/TS 16949:2002(E) Foreword ISO (the International Organization for Standardization) is a worldwide federation of national standards bodies (ISO member bodies). The work of preparing International Standards is normally carried out through ISO technical committees. Each member body interested in a subject for which a technical committee has been established has the right to be represented on that committee. International organizations, governmental and non-governmental, in liaison with ISO, also take part in the work. ISO collaborates closely with the International Electrotechnical Commission (IEC) on all matters of electrotechnical standardization. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 3. The main task of technical committees is to prepare International Standards. Draft International Standards adopted by the technical committees are circulated to the member bodies for voting. Publication as an International Standard requires approval by at least 75 % of the member bodies casting a vote. In other circumstances, particularly when there is an urgent market requirement for such documents, a technical committee may decide to publish other types of normative document: an ISO Publicly Available Specification (ISO/PAS) represents an agreement between technical experts in an ISO working group and is accepted for publication if it is approved by more than 50 % of the members of the parent committee casting a vote; an ISO Technical Specification (ISO/TS) represents an agreement between the members of a technical committee and is accepted for publication if it is approved by 2/3 of the members of the committee casting a vote. An ISO/PAS or ISO/TS is reviewed after three years with a view to deciding whether it should be confirmed for a further three years, revised to become an International Standard, or withdrawn. In the case of a confirmed ISO/PAS or ISO/TS, it is reviewed again after six years at which time it has to be either transposed into an International Standard or withdrawn. ISO/TS 16949:2002 was prepared by the International Automotive Task Force (IATF) and Japan Automobile Manufacturers Association, Inc. (JAMA), with support from ISO/TC 176, Quality management and quality assurance. This second edition of ISO/TS 16949 cancels and replaces the first edition (ISO/TS 16949:1999), which has been technically revised. Boxed text is original ISO 9001:2000 text. The sector-specific supplemental requirements are outside the boxes. In this Technical Specification, the word “shall” indicates a requirement. The word “should” indicates a recommendation. Paragraphs marked “NOTE” are for guidance in understanding or clarifying the associated requirement. Where the term “such as” is used, any suggestions given are for guidance only. Annex A forms a normative part of this Technical Specification. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved vii
- ISO/TS 16949:2002(E) Remarks for certification The certification to this Technical Specification, including customer-specific requirements if any, is recognized by the customer members of IATF when achieved according to the IATF certification scheme (see the “Rules for achieving IATF recognition”). Details can be obtained at the addresses of the local oversight bodies of IATF cited below: Associazione Nazionale Fra Industrie Automobilistiche (ANFIA) Web site: www.anfia.it e-mail: anfia@anfia.it International Automotive Oversight Bureau (IAOB) Web site: www.iaob.org e-mail: quality@iaob.org Fédération des Industries des Équipements pour Véhicules (FIEV) Comité des Constructeurs Français d'Automobiles (CCFA) Web site: www.iatf-france.com e-mail: iatf@iatf-France.com Society of Motor Manufacturers and Traders Ltd. (SMMT Ltd.) Web site: www.smmt.co.uk e-mail: quality@smmt.co.uk Verband der Automobilindustrie Qualitätsmanagement Center (VDA-QMC) Web site: www.vda-qmc.de e-mail: info@vda-qmc.de © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. viii – All rights reserved
- ISO/TS 16949:2002(E) Introduction 0.1 General ISO 9001:2000, Quality management systems — Requirements Introduction 0.1 General The adoption of a quality management system should be a strategic decision of an organization. The design and implementation of an organization's quality management system is influenced by varying needs, particular objectives, the products provided, the processes employed and the size and structure of the organization. It is not the intent of this International Standard to imply uniformity in the structure of quality management systems or uniformity of documentation. The quality management system requirements specified in this International Standard are complementary to requirements for products. Information marked “NOTE” is for guidance in understanding or clarifying the associated requirement. This International Standard can be used by internal and external parties, including certification bodies, to assess the organization's ability to meet customer, regulatory and the organization's own requirements. The quality management principles stated in ISO 9000 and ISO 9004 have been taken into consideration during the development of this International Standard. 0.2 Process approach ISO 9001:2000, Quality management systems — Requirements 0.2 Process approach This International Standard promotes the adoption of a process approach when developing, implementing and improving the effectiveness of a quality management system, to enhance customer satisfaction by meeting customer requirements. For an organization to function effectively, it has to identify and manage numerous linked activities. An activity using resources, and managed in order to enable the transformation of inputs into outputs, can be considered as a process. Often the output from one process directly forms the input to the next. The application of a system of processes within an organization, together with the identification and interactions of these processes, and their management, can be referred to as the “process approach”. An advantage of the process approach is the ongoing control that it provides over the linkage between the individual processes within the system of processes, as well as over their combination and interaction. When used within a quality management system, such an approach emphasizes the importance of a) understanding and meeting requirements, b) the need to consider processes in terms of added value, c) obtaining results of process performance and effectiveness, and d) continual improvement of processes based on objective measurement. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved ix
- ISO/TS 16949:2002(E) The model of a process-based quality management system shown in Figure 1 illustrates the process linkages presented in clauses 4 to 8. This illustration shows that customers play a significant role in defining requirements as inputs. Monitoring of customer satisfaction requires the evaluation of information relating to customer perception as to whether the organization has met the customer requirements. The model shown in Figure 1 covers all the requirements of this International Standard, but does not show processes at a detailed level. NOTE In addition, the methodology known as “Plan-Do-Check-Act” (PDCA) can be applied to all processes. PDCA can be briefly described as follows. Plan: establish the objectives and processes necessary to deliver results in accordance with customer requirements and the organization's policies. Do: implement the processes. Check: monitor and measure processes and product against policies, objectives and requirements for the product and report the results. Act: take actions to continually improve process performance. Figure 1 — Model of a process-based quality management system © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. x – All rights reserved
- ISO/TS 16949:2002(E) 0.3 Relationship with ISO 9004 ISO 9001:2000, Quality management systems — Requirements 0.3 Relationship with ISO 9004 The present editions of ISO 9001 and ISO 9004 have been developed as a consistent pair of quality management system standards which have been designed to complement each other, but can also be used independently. Although the two International Standards have different scopes, they have similar structures in order to assist their application as a consistent pair. ISO 9001 specifies requirements for a quality management system that can be used for internal application by organizations, or for certification, or for contractual purposes. It focuses on the effectiveness of the quality management system in meeting customer requirements. ISO 9004 gives guidance on a wider range of objectives of a quality management system than does ISO 9001, particularly for the continual improvement of an organization's overall performance and efficiency, as well as its effectiveness. ISO 9004 is recommended as a guide for organizations whose top management wishes to move beyond the requirements of ISO 9001, in pursuit of continual improvement of performance. However, it is not intended for certification or for contractual purposes. NOTE The knowledge and use of the eight quality management principles referred to in ISO 9000:2000 and ISO 9004:2000 should be demonstrated and cascaded through the organization by top management. 0.3.1 IATF Guidance to ISO/TS 16949:2000 “IATF Guidance to ISO/TS 16949:2002” is a document containing recommended automotive industry practices, examples, illustrations and explanations, and provides assistance in the application to conform to the requirements of this Technical Specification. This IATF Guidance document is not intended for certification or for contractual purposes 0.4 Compatibility with other management systems ISO 9001:2000, Quality management systems — Requirements 0.4 Compatibility with other management systems This International Standard has been aligned with ISO 14001:1996 in order to enhance the compatibility of the two standards for the benefit of the user community. This International Standard does not include requirements specific to other management systems, such as those particular to environmental management, occupational health and safety management, financial management or risk management. However, this International Standard enables an organization to align or integrate its own quality management system with related management system requirements. It is possible for an organization to adapt its existing management system(s) in order to establish a quality management system that complies with the requirements of this International Standard. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved xi
- ISO/TS 16949:2002(E) 0.5 Goal of this Technical Specification The goal of this Technical Specification is the development of a quality management system that provides for continual improvement, emphasizing defect prevention and the reduction of variation and waste in the supply chain. This Technical Specification, coupled with applicable customer-specific requirements, defines the fundamental quality management system requirements for those subscribing to this document. This Technical Specification is intended to avoid multiple certification audits and provide a common approach to a quality management system for automotive production, and relevant service part organizations. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. xii – All rights reserved
- TECHNICAL SPECIFICATION ISO/TS 16949:2002(E) Quality management systems ----- Particular requirements for the - application of ISO 9001:2000 for automotive production and relevant service part organizations 1 Scope 1.1 General ISO 9001:2000, Quality management systems — Requirements 1 Scope 1.1 General This International Standard specifies requirements for a quality management system where an organization a) needs to demonstrate its ability to consistently provide product that meets customer and applicable regulatory requirements, and b) aims to enhance customer satisfaction through the effective application of the system, including processes for continual improvement of the system and the assurance of conformity to customer and applicable regulatory requirements. NOTE In this International Standard, the term “product” applies only to the product intended for, or required by, a customer. This Technical Specification, in conjunction with ISO 9001:2000, defines the quality management system requirements for the design and development, production and, when relevant, installation and service of automotive-related products. This Technical Specification is applicable to sites of the organization where customer-specified parts, for production and/or service, are manufactured. Supporting functions, whether on-site or remote (such as design centres, corporate headquarters and distribution centres), form part of the site audit as they support the site, but cannot obtain stand-alone certification to this Technical Specification. This Technical Specification can be applied throughout the automotive supply chain. 1.2 Application ISO 9001:2000, Quality management systems — Requirements 1.2 Application All requirements of this International Standard are generic and are intended to be applicable to all organizations, regardless of type, size and product provided. Where any requirement(s) of this International Standard cannot be applied due to the nature of an organization and its product, this can be considered for exclusion. Where exclusions are made, claims of conformity to this International Standard are not acceptable unless these exclusions are limited to requirements within clause 7, and such exclusions do not affect the organization's ability, or responsibility, to provide product that meets customer and applicable regulatory requirements. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved 1
- ISO/TS 16949:2002(E) The only permitted exclusions for this Technical Specification relate to 7.3 where the organization is not responsible for product design and development. Permitted exclusions do not include manufacturing process design. 2 Normative reference The following normative document contains provisions, which, through reference in this text, constitute provisions of this Technical Specification. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. However, parties to agreements based on this Technical Specification are encouraged to investigate the possibility of applying the most recent edition of the normative document indicated below. For undated references, the latest edition of the normative document referred to applies. Members of ISO and IEC maintain registers of currently valid International Standards. ISO 9000:2000, Quality management systems — Fundamentals and vocabulary 3 Terms and definitions ISO 9001:2000, Quality management systems — Requirements 3 Terms and definitions For the purposes of this International Standard, the terms and definitions given in ISO 9000 apply. The following terms, used in this edition of ISO 9001 to describe the supply chain, have been changed to reflect the vocabulary currently used: supplier ———— organization ———— customer The term “organization” replaces the term “supplier” used in ISO 9001:1994, and refers to the unit to which this International Standard applies. Also, the term “supplier” now replaces the term “subcontractor”. Throughout the text of this International Standard, wherever the term “product” occurs, it can also mean “service”. 3.1 Terms and definitions for the automotive industry For the purposes of this Technical Specification, the terms and definitions given in ISO 9000:2000 and the following apply. 3.1.1 control plan documented description of the systems and processes required for controlling product (see annex A) 3.1.2 design responsible organization organization with authority to establish a new, or change an existing, product specification NOTE This responsibility includes testing and verification of design performance within the customer’s specified application. 3.1.3 error proofing product and manufacturing process design and development to prevent manufacture of nonconforming products 3.1.4 laboratory facility for inspection, test or calibration that may include, but is not limited to, chemical, metallurgical, dimensional, physical, electrical or reliability testing © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. 2 – All rights reserved
- ISO/TS 16949:2002(E) 3.1.5 laboratory scope controlled document containing specific tests, evaluations and calibrations that a laboratory is qualified to perform, list of the equipment which it uses to perform the above, and list of methods and standards to which it performs the above 3.1.6 manufacturing process of making or fabricating production materials, production or service parts, assemblies, or heat treating, welding, painting, plating or other finishing services 3.1.7 predictive maintenance activities based on process data aimed at the avoidance of maintenance problems by prediction of likely failure modes 3.1.8 preventive maintenance planned action to eliminate causes of equipment failure and unscheduled interruptions to production, as an output of the manufacturing process design 3.1.9 premium freight extra costs or charges incurred additional to contracted delivery NOTE This can be caused by method, quantity, unscheduled or late deliveries, etc. 3.1.10 remote location location that supports sites and at which non-production processes occur 3.1.11 site location at which value-added manufacturing processes occur 3.1.12 special characteristic product characteristic or manufacturing process parameter which can affect safety or compliance with regulations, fit, function, performance or subsequent processing of product 4 Quality management system 4.1 General requirements ISO 9001:2000, Quality management systems — Requirements 4 Quality management system 4.1 General requirements The organization shall establish, document, implement and maintain a quality management system and continually improve its effectiveness in accordance with the requirements of this International Standard. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved 3
- ISO/TS 16949:2002(E) The organization shall a) identify the processes needed for the quality management system and their application throughout the organization (see 1.2), b) determine the sequence and interaction of these processes, c) determine criteria and methods needed to ensure that both the operation and control of these processes are effective, d) ensure the availability of resources and information necessary to support the operation and monitoring of these processes, e) monitor, measure and analyse these processes, and f) implement actions necessary to achieve planned results and continual improvement of these processes. These processes shall be managed by the organization in accordance with the requirements of this International Standard. Where an organization chooses to outsource any process that affects product conformity with requirements, the organization shall ensure control over such processes. Control of such outsourced processes shall be identified within the quality management system. NOTE Processes needed for the quality management system referred to above should include processes for management activities, provision of resources, product realization and measurement. 4.1.1 General requirements — Supplemental Ensuring control over outsourced processes shall not absolve the organization of the responsibility of conformity to all customer requirements. NOTE See also 7.4.1 and 7.4.1.3. 4.2 Documentation requirements 4.2.1 General ISO 9001:2000, Quality management systems — Requirements 4.2 Documentation requirements 4.2.1 General The quality management system documentation shall include a) documented statements of a quality policy and quality objectives, b) a quality manual, c) documented procedures required by this International Standard, d) documents needed by the organization to ensure the effective planning, operation and control of its processes, and e) records required by this International Standard (see 4.2.4). © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. 4 – All rights reserved
- ISO/TS 16949:2002(E) NOTE 1 Where the term “documented procedure” appears within this International Standard, this means that the procedure is established, documented, implemented and maintained. NOTE 2 The extent of the quality management system documentation can differ from one organization to another due to a) the size of organization and type of activities, b) the complexity of processes and their interactions, and c) the competence of personnel. NOTE 3 The documentation can be in any form or type of medium. 4.2.2 Quality manual ISO 9001:2000, Quality management system — Requirements 4.2.2 Quality manual The organization shall establish and maintain a quality manual that includes a) the scope of the quality management system, including details of and justification for any exclusions (see 1.2), b) the documented procedures established for the quality management system, or reference to them, and c) a description of the interaction between the processes of the quality management system. 4.2.3 Control of documents ISO 9001:2000, Quality management system — Requirements 4.2.3 Control of documents Documents required by the quality management system shall be controlled. Records are a special type of document and shall be controlled according to the requirements given in 4.2.4. A documented procedure shall be established to define the controls needed a) to approve documents for adequacy prior to issue, b) to review and update as necessary and re-approve documents, c) to ensure that changes and the current revision status of documents are identified, d) to ensure that relevant versions of applicable documents are available at points of use, e) to ensure that documents remain legible and readily identifiable, f) to ensure that documents of external origin are identified and their distribution controlled, and g) to prevent the unintended use of obsolete documents, and to apply suitable identification to them if they are retained for any purpose. 4.2.3.1 Engineering specifications The organization shall have a process to assure the timely review, distribution and implementation of all customer engineering standards/specifications and changes based on customer-required schedule. Timely review should be as soon as possible, and shall not exceed two working weeks. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved 5
- ISO/TS 16949:2002(E) The organization shall maintain a record of the date on which each change is implemented in production. Implementation shall include updated documents. NOTE A change in these standards/specifications requires an updated record of customer production part approval when these specifications are referenced on the design record or if they affect documents of production part approval process, such as control plan, FMEAs, etc. 4.2.4 Control of records ISO 9001:2000, Quality management system — Requirements 4.2.4 Control of records Records shall be established and maintained to provide evidence of conformity to requirements and of the effective operation of the quality management system. Records shall remain legible, readily identifiable and retrievable. A documented procedure shall be established to define the controls needed for the identification, storage, protection, retrieval, retention time and disposition of records. NOTE 1 “Disposition” above includes disposal. NOTE 2 “Records” also include customer-specified records. 4.2.4.1 Records retention The control of records shall satisfy regulatory and customer requirements. 5 Management responsibility 5.1 Management commitment ISO 9001:2000, Quality management systems — Requirements 5 Management responsibility 5.1 Management commitment Top management shall provide evidence of its commitment to the development and implementation of the quality management system and continually improving its effectiveness by a) communicating to the organization the importance of meeting customer as well as statutory and regulatory requirements, b) establishing the quality policy, c) ensuring that quality objectives are established, d) conducting management reviews, and e) ensuring the availability of resources. 5.1.1 Process efficiency Top management shall review the product realization processes and the support processes to assure their effectiveness and efficiency. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. 6 – All rights reserved
- ISO/TS 16949:2002(E) 5.2 Customer focus ISO 9001:2000, Quality management systems — Requirements 5.2 Customer focus Top management shall ensure that customer requirements are determined and are met with the aim of enhancing customer satisfaction (see 7.2.1 and 8.2.1). 5.3 Quality policy ISO 9001:2000, Quality management systems — Requirements 5.3 Quality policy Top management shall ensure that the quality policy a) is appropriate to the purpose of the organization, b) includes a commitment to comply with requirements and continually improve the effectiveness of the quality management system, c) provides a framework for establishing and reviewing quality objectives, d) is communicated and understood within the organization, and e) is reviewed for continuing suitability. 5.4 Planning 5.4.1 Quality objectives ISO 9001:2000, Quality management systems — Requirements 5.4 Planning 5.4.1 Quality objectives Top management shall ensure that quality objectives, including those needed to meet requirements for product [see 7.1 a)] are established at relevant functions and levels within the organization. The quality objectives shall be measurable and consistent with the quality policy. 5.4.1.1 Quality objectives — Supplemental Top management shall define quality objectives and measurements that shall be included in the business plan and used to deploy the quality policy. NOTE Quality objectives should address customer expectations and be achievable within a defined time period. 5.4.2 Quality management system planning ISO 9001:2000, Quality management systems — Requirements 5.4.2 Quality management system planning Top management shall ensure that a) the planning of the quality management system is carried out in order to meet the requirements given in 4.1, as well as the quality objectives, and b) the integrity of the quality management system is maintained when changes to the quality management system are planned and implemented. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. – All rights reserved 7
- ISO/TS 16949:2002(E) 5.5 Responsibility, authority and communication 5.5.1 Responsibility and authority ISO 9001:2000, Quality management systems — Requirements 5.5 Responsibility, authority and communication 5.5.1 Responsibility and authority Top management shall ensure that the responsibilities and authorities are defined and communicated within the organization. 5.5.1.1 Responsibility for quality Managers with responsibility and authority for corrective action shall be promptly informed of products or processes which do not conform to requirements. Personnel responsible for product quality shall have the authority to stop production to correct quality problems. Production operations across all shifts shall be staffed with personnel in charge of, or delegated responsibility for, ensuring product quality. 5.5.2 Management representative ISO 9001:2000, Quality management systems — Requirements 5.5.2 Management representative Top management shall appoint a member of management who, irrespective of other responsibilities, shall have responsibility and authority that includes a) ensuring that processes needed for the quality management system are established, implemented and maintained, b) reporting to top management on the performance of the quality management system and any need for improvement, and c) ensuring the promotion of awareness of customer requirements throughout the organization. NOTE The responsibility of a management representative can include liaison with external parties on matters relating to the quality management system. 5.5.2.1 Customer representative Top management shall designate personnel with responsibility and authority to ensure that customer requirements are addressed. This includes selection of special characteristics, setting quality objectives and related training, corrective and preventive actions, product design and development. 5.5.3 Internal communication ISO 9001:2000, Quality management systems — Requirements 5.5.3 Internal communication Top management shall ensure that appropriate communication processes are established within the organization and that communication takes place regarding the effectiveness of the quality management system. © ISO 2002 – All rights reserved © ANFIA, © CCFA/FIEV, © SMMT, © VDA, © DaimlerChrysler, Ford Motor Company, General Motors Corp. 8 – All rights reserved
CÓ THỂ BẠN MUỐN DOWNLOAD

Set-Cookie: TLDEVNamespace=0vfah3e07901n88ru6b5n20m00; path=/; domain=.tailieu.vn; HttpOnly


markdown:
# Tutorial n
Chia sẻ: Thuy Linh | Ngày: | Loại File: PDF | Số trang:19
lượt xem 26
download
![](http://image1.tailieu.vn/document/thumbnail/2009/20090610/thuylinh/80x100/tut02-01-pvn-nqnt-160306-pdf-1218.jpg)
##
Tutorial n
[Vui lòng tải xuống để xem tài liệu đầy đủ](javascript:void(0);)
Download
![](http://static1.tailieu.vn/b2013az/templates/version1/default/images/down16x21.png)
Thông qua các ví dụ về hiển thị LED, bộ khung cơ bản của chương trình hợp ngữ cho dspic cùng với một số lệnh và thao tác cơ bản của dspic được phân tích. Khung cơ bản sẽ giới thiệu các phần.
Bình luận(0)
[Đăng nhập để gửi bình luận!](javascript:void(0);)
##
Nội dung Text: Tutorial n
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 1/19 Tutorial no 02.01 Gửi đến: Đoàn Hiệp, www.picvietnam.com Nội dung: Chương trình hợp ngữ hiển thị LED với dsPIC MICROSOFT WORD Tóm tắt: Hướng dẫn viết chương trình hợp ngữ hiển thị LED cho dsPIC: Khung cơ bản của một chương trình hợp ngữ cho dsPIC, một số lệnh và thao tác cơ bản. 1. Giới thiệu Thông qua các ví dụ về hiển thị LED, bộ khung cơ bản của chương trình hợp ngữ cho dsPIC cùng với một số lệnh và thao tác cơ bản của dsPIC được phân tích. Khung cơ bản sẽ giới thiệu các phần như: thông tin cơ bản, lệnh gộp (include), đặt cấu hình cho chip, khai báo hằng số, khai báo điểm bắt đầu chương trình, chương trình con, chương trình xử lý ngắt. Các lệnh được giới thiệu (không đầy đủ) thuộc các nhóm: lệnh sao chép dữ liệu, lệnh số học, lệnh luận lý, lệnh dịch/xoay, lệnh thao tác bit, lệnh so sánh, lệnh chuyển điều khiển. Thao tác truy xuất cổng, cài đặt và kích hoạt bộ định thời (timer), cũng như các thao tác thiết lập ngăn xếp (stack) sẽ được đề cập. Ngoài ra, một số kiểu định vị cũng sẽ được nói đến. 2. Các quy ước trong tài liệu Mô tả Biểu thị Ví dụ Font Palatino Linotype: dsPIC30F/33F In nghiêng Tài liệu tham khảo Programmer’s Reference Manual Viết hoa chữ đầu Chọn một menu chọn Project Wizard Một tên trường trong cửa “Save project before Đặt trong dấu nháy kép sổ hay hộp thoại build” Một nút nhấn Nhấn Next In đậm Một nhãn Chọn nhãn Power Văn bản giữa các dấu Một phím trên bàn phím Nhấn , ngoặc nhọn < > Font Courier: Courier thường Mã nguồn mov #0x8010, W0
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 2/19 Từ khóa blcr, bra Tên tập tin, đường dẫn D:\Microchip\ Tùy chọn ở dòng lệnh pic30-as –-version 3. Các ví dụ về LED Trước khi bắt đầu theo dõi các ví dụ, bạn hãy chép các tập tin nguồn đã được đính kèm vào một thư mục nào đó mà bạn sẽ dùng để tạo ra project “Vidu2”. 3.1. Ví dụ 2-1 Bạn hãy làm theo các bước như trong tutorial 1 để tạo một project có tên là “Vidu2”, bạn thêm vào project tập tin nguồn “Vidu2-1.s” (được đính kèm) và kịch bản liên kết “p30f4012.gld”. Sau khi hoàn tất việc tạo project, cửa sổ cây quản lý tập tin của project hẳn sẽ trông giống như hình minh họa dưới đây. Hình 3.1: Cây quản lý tập tin của project Vidu2 Vì đây là tutorial thứ hai nên các ví dụ được đặt tên bắt đầu bằng “Vidu2”, nhưng “Vidu2-1.s” thực chất là “Vidu.s” đã được giới thiệu trong tutorial 1. Trong ví dụ này, một chương trình đơn giản sẽ thực hiện việc làm nhấp nháy một LED nối vào chân RD0 của dsPIC. Tôi giả thiết rằng bạn biết cách nối một LED vào chân RD0 của dsPIC trên mạch thử nghiệm của bạn, một khi bạn đọc tài liệu này (tất nhiên các chân nguồn và chân MCLR cần phải được kết nối thích hợp, chương trình ví dụ sẽ sử dụng bộ dao động nội của dsPIC, do đó không cần có mạch tạo dao động để cấp xung clock ở bên ngoài). Để tiện theo dõi, chương trình nguồn “Vidu2-1.s” được liệt kê dưới đây, với một số phần chú thích được cắt bỏ cho thuận tiện. Liệt kê mã nguồn “Vidu2-1.s”: 1 .equ __30F4012, 1 2 .include "p30fxxxx.inc" 3 config __FOSC, CSW_FSCM_OFF & FRC_PLL4 4 config __FWDT, WDT_OFF 5 config __FBORPOR, MCLR_EN & PBOR_OFF
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 3/19 6 config __FGS, CODE_PROT_OFF ;--------------------------------------------------------------- ;Cac hang so (gia tri tuc thoi) cua chuong trinh 7 .equiv LED, 0 ;LED noi vao RD0 ;--------------------------------------------------------------- ;Cac khai bao toan cuc 8 .global __reset ;Khai bao nhan bat dau chuong trinh (bat buoc) 9 .global __T1Interrupt ;Khai bao toan cuc c/t xu ly ngat Timer 1 ;--------------------------------------------------------------- ;Doan ma trong vung nho chuong trinh 10 .text ;Bat dau doan ma chuong trinh __reset: 11 mov #__SP_init, W15 ;Khoi tao con tro ngan xep (stack) 12 mov #__SPLIM_init, W0 13 mov W0, SPLIM ;Khoi tao thanh ghi gioi han con tro (stack) 14 nop ;Can mot lenh NOP sau khi ghi vao SPLIM 15 clr W0 ;Xoa thanh ghi lam viec W0 16 mov W0, W14 ;Xoa cac thanh ghi W1 den W14 17 repeat #12 18 mov W0,[++W14] ;Dia chi cua cac thanh ghi: 0x0002 - 0x001C 19 clr W14 ;--------------------------------------------------------------- 20 rcall Init_PORTS ;Khoi tao cac cong I/O 21 rcall Init_TMR1 ;Khoi tao cho TMR1 (tran moi 0,5 giay) main_loop: 22 nop 23 nop 24 bra main_loop ;Vong lap chinh, khong lam gi ca, chi cho ngat ;--------------------------------------------------------------- ;Chuong trinh con khoi tao TMR1 ;TMR1 duoc khoi tao de tran sau moi 0,5 giay tai muc xung 5 Mips ; (fcy = 5 MHz) ;--------------------------------------------------------------- Init_TMR1: 25 clr TMR1 26 mov #0x9894, W0 ;TMR1 tran moi 0,5 giay 27 mov W0, PR1 ;Dat nguong tran vao PR1 28 bclr IFS0, #T1IF ;Xoa co ngat cua TMR1 29 mov #0x8020, W0 ;TMR1 dung fcy lam clock, prescale la 1:64, 30 mov W0, T1CON ;va khoi dong TMR1 31 bset IEC0, #T1IE ;cho phep ngat khi TMR1 tran 32 return ;--------------------------------------------------------------- ;Chuong trinh con khoi tao cac cong I/O, de noi voi LED ;--------------------------------------------------------------- Init_PORTS: 33 clr LATD ;Xoa thanh ghi chot cho cong D 34 mov #0xFFFE, W0 ;LED noi vao cong D, chan RD0 35 mov W0, TRISD 36 return ;---------------------------------------------------------------
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 4/19 ;Trinh phuc vu ngat cho TMR1 ;Moi 0,5 giay ngat nay duoc thuc thi. No se lat trang thai (toggle) ;cua LED noi vao chan RD0 ;--------------------------------------------------------------- __T1Interrupt: ;Ten nay da duoc dinh nghia truoc trong tap tin ;lien ket 37 bclr IFS0, #T1IF ;Xoa co ngat 38 btg PORTD, #LED ;Lat trang thai LED 39 retfie ;Tro ve tu ngat ;--------------------------------------------------------------- 40 .end ;Ket thuc phan ma trong tap tin nay Ở đây các dòng lệnh được đánh số để thuận tiện cho việc giải thích, và các con số này không nên xuất hiện trong chương trình thực của bạn (hay nói cách khác, bạn không nên đánh số giống như vậy trong chương trình của bạn). Trước khi thực sự viết bất kỳ một dòng lệnh nào, bạn nên dành thời gian mô tả các thông tin về chương trình trong phần khung thông tin ở đầu tập tin nguồn. Các chương trình ví dụ ở đây chỉ là mẫu rút gọn, mẫu chính thức sẽ được chúng tôi cung cấp sau khi đã chuẩn hóa xong. Dòng 1 và 2 sẽ thực hiện việc gộp tập tin tương ứng với chip được định nghĩa vào tập tin nguồn. Bạn có thể chỉ dùng một lệnh .inc để gộp tập tin “p30f4012.inc” dành cho dsPIC đang được dùng, ở đây chỉ đơn giản là giới thiệu một cách khác để gộp tập tin vào tập tin nguồn. Tập tin gộp (include) chứa các định nghĩa của các thanh ghi, các bit trong các thanh ghi, và các hằng số khác được sử dụng trong chương trình, chẳng hạn như các fuse trong các word cấu hình. Như bạn sẽ thấy dọc theo chiều dài của chương trình, các dẫn hướng (directive) của ASM30 thường bắt đầu bằng một dấu chấm, khác với đa số các dẫn hướng của MPASM (dành cho các dòng PIC 8-bit). Dòng 3 đến dòng 6 đặt các word cấu hình cho chip. Chúng ta xét một lệnh đặt cấu hình tiêu biểu dưới đây. config __FOSC, CSW_FSCM_OFF & FRC_PLL4 config là một macro được định nghĩa sẵn trong tập tin gộp, dùng để đặt giá trị cho các từ cấu hình một cách thuận tiện. Sau đó chúng ta dùng tên của word cấu hình, rồi đến dấu phẩy, sau đó là các bit hay các nhóm bit được tập hợp lại thông qua phép toán logic AND. Các hằng số này được định nghĩa trong tập tin gộp, như đã nói. Nếu bạn cảm thấy khó khăn trong việc nhớ các hằng số này, có một cách đơn giản hơn (được chính hãng Microchip khuyên dùng) là mở tập tin gộp của chip đang được dùng (ở đây là “p30f4012.inc”) và chép các lệnh đặt cấu hình mà bạn mong muốn vào tập tin nguồn của bạn. Các lệnh đặt cấu hình hợp lệ đã được tạo ra sẵn trong tập tin gộp, bạn chỉ cần chép vào và gỡ bỏ chú thích (uncomment). Như vậy lệnh đặt cấu hình ở trên tắt các chức năng chuyển xung clock (Clock Switching)
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 5/19 và giám sát sự cố clock (Fail-Safe Clock Monitor), đồng thời cấu hình chip dùng bộ dao động nội tốc độ cao (FRC) với PLLx4 được kích hoạt. Dòng 7 là một ví dụ về cách khai báo hằng dùng chỉ dẫn .equiv. Điểm khác biệt giữa .equiv và .equ là .equiv sẽ đưa ra thông báo lỗi nếu hằng số đã được định nghĩa trước đó, trong khi .equ sẽ định nghĩa lại hằng số và không báo lỗi. Dòng 8 và 9 là các khai báo toàn cục cho các đoạn chương trình xử lý reset và ngắt timer 1. Cần lưu ý là khai báo cho đoạn chương trình xử lý reset là bắt buộc, vì nó dùng để định nghĩa điểm bắt đầu chương trình (là nơi mà bộ xử lý sẽ nhảy đến thực thi sau khi thoát khỏi trạng thái reset). Các tên như __reset, __T1Interrupt đã được định nghĩa sẵn trong tập tin liên kết (ở đây là “p30f4012.gld”). Bạn chú ý là các tên này được bắt đầu bằng hai dấu gạch dưới (underscore) liên tiếp (để tương thích với trình biên dịch C). __reset là nhãn bắt đầu chương trình chính, còn __T1Interrupt là nhãn của chương trình xử lý ngắt timer 1. (Thực tế thì bạn vẫn có thể dùng tên khác cho các phần này, nhưng bạn sẽ phải mô tả nó trong tập tin kịch bản liên kết, mà tôi sẽ không đề cập đến trong tutorial này. Do đó, tạm thời chúng ta xem như đây là những tên bắt buộc phải dùng để đảm bảo chương trình hoạt động như dự định). Chương trình chính gồm các lệnh từ dòng 10 đến dòng 24. Tại dòng 10 là một khai báo bắt đầu một đoạn mã thuộc bộ nhớ chương trình, .text là một đoạn đã được định nghĩa trước đối với trình hợp dịch ASM30. Tương tự, bạn sẽ dùng .bss cho đoạn chứa các dữ liệu không khởi tạo giá trị và .data cho đoạn chứa các dữ liệu được khởi tạo giá trị. Ngoài ra, còn có những đoạn được định nghĩa sẵn cho các vùng nhớ X, Y, EEPROM, ..., bạn tham khảo thêm trong tài liệu hướng dẫn online của ASM30, hoặc tài liệu MPLAB ASM30, MPLAB LINK30, and Utilities User’s Guide (DS51317). Chương trình chính của chúng ta thực sự bắt đầu ở dòng 11. Từ dòng 11 đến dòng 14 là các lệnh khởi tạo ngăn xếp (stack), với các hằng số __SP_init và __SPLIM_init được ASM30 xác định khi biên dịch, dựa vào thông tin về chip được dùng. Thanh ghi W15 mặc định là con trỏ ngăn xếp, do đó bạn không nên sử dụng thanh ghi này, mặc dù nó là một thanh ghi đa dụng. Các lệnh được sử dụng ở đây là mov và nop. mov là lệnh sao chép dữ liệu, một lệnh không thể thiếu trong bất kỳ tập lệnh của vi điều khiển nào. Quy tắc viết của lệnh là từ khóa mov, sau đó là toán hạng nguồn, dấu phẩy rồi đến toán hạng đích. dsPIC hỗ trợ 8 lệnh sao chép dữ liệu 16-bit, 1 lệnh sao chép dữ liệu 8-bit (định vị tức thời), và 2 lệnh sao chép dữ liệu 32-bit (định vị thanh ghi). Với dữ liệu 16-bit, dsPIC hỗ trợ sao chép dữ liệu giữa các thanh ghi làm việc Wn và các thanh ghi chức năng, và sao chép dùng định vị tức thời và định vị thanh ghi. Bạn tham khảo tài liệu dsPIC30F/33F Programmer’s Reference Manual (DS70157) để có thông tin đầy đủ về tập lệnh của dsPIC. Bạn chắc hẳn có thể đoán ra nop là lệnh không làm gì cả (chỉ khiến bộ xử lý tiêu tốn một chu kỳ máy).
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 6/19 Các dòng 15 đến 19 dùng để xóa các thanh ghi làm việc W0 đến W14. Tất nhiên chúng ta có thể dùng 15 lệnh clr Wn, với n=0-14, để thực hiện việc đó. Tuy nhiên, ở đây tôi giới thiệu đôi chút kỹ thuật định vị gián tiếp thanh ghi và lệnh lặp phần cứng repeat. Các dòng 15 và 16 hẳn không có gì khó hiểu đối với bạn, dùng để xóa thanh ghi W0 và W14. Bạn có thể dùng lệnh clr hay lệnh mov để xóa các thanh ghi này. Lệnh clr chỉ có một toán hạng, đó là toán hạng đích. Tiếp theo, hãy để ý rằng các thanh ghi Wn cũng là các thanh ghi chức năng, có địa chỉ liên tiếp nhau và bắt đầu từ 0x0000. Do đó, có thể lợi dụng thanh ghi W14 làm con trỏ đến vùng địa chỉ này, và thông qua lệnh lặp để xóa 13 thanh ghi còn lại. Con trỏ W14 hiện đang trỏ đến địa chỉ 0x0000 (vì vừa được xóa), do đó cần được cập nhật trước khi sử dụng, và chúng ta dùng toán tử tăng trước (preincrement) như trong tập tin nguồn đã thể hiện. Lệnh repeat cho phép bạn thực hiện lặp lại lệnh ngay sau nó một số lần được quy định bởi một hằng số (như trong ví dụ này) hay bởi một thanh ghi làm việc Wn. Cụ thể thì chúng ta mô tả giá trị hằng số bằng số lần cần lặp trừ đi 1. Do vậy, lệnh repeat#12 sẽ lặp lại 13 lần lệnh ngay sau nó (ở đây là mov W0,[++W14]). Lệnh repeat cho phép lặp tối đa 16384 lần, nếu bạn dùng một thanh ghi Wn thì chỉ có 14 bit thấp nhất của Wn được quan tâm. Vì bộ nhớ dữ liệu của dsPIC cho phép truy xuất cả byte lẫn word, do đó Microchip đã đánh địa chỉ bộ nhớ dữ liệu của dsPIC theo byte. Như vậy, toán tử tăng trước ++ trong lệnh mov ở dòng 18 sẽ khiến thanh ghi con trỏ W14 tăng 2 sau mỗi lần lặp (để trỏ đến word kế tiếp). Sau cùng, vì W14 đã có giá trị khác 0, lệnh clr W14 ở dòng 19 hoàn tất việc xóa các thanh ghi làm việc W0 đến W14. Ở các dòng 20 và 21, chúng ta gọi các chương trình con để khởi tạo các cổng xuất nhập và timer 1. Lệnh gọi chương trình con tương đối rcall cho phép gọi các chương trình con nằm trong phạm vi -32768 đến +32767 từ lệnh so với lệnh kế tiếp (vì khi thực thi lệnh này thì thanh ghi đếm lệnh PC đã chỉ đến lệnh kế tiếp). Nếu chương trình con nằm ngoài phạm vi này thì cần phải dùng lệnh call, cho phép gọi bất kỳ chương trình con nào trong phạm vi không gian địa chỉ 24-bit của dsPIC. Dòng 22 đến dòng 24 là vòng lặp chính, với 2 lệnh nop và một lệnh rẽ nhánh không điều kiện bra. Lệnh bra cũng có tầm địa chỉ tương tự như lệnh rcall đã nói ở trên. Vì các thao tác cập nhật ngõ ra được thực hiện trong chương trình xử lý ngắt timer 1, do đó chương trình sẽ không có việc gì để thực thi. Chương trình con khởi tạo timer 1 gồm các lệnh từ dòng 25 đến 32. Ngoài các lệnh đã gặp, ở đây chúng ta thấy có 2 lệnh mới dùng để thao tác bit là bset và bclr. Hai lệnh này có toán hạng đầu là thanh ghi bị tác động, và toán hạng kế tiếp là chỉ số của bit bị tác động. Chỉ số của bit chỉ có thể được mô tả bằng một hằng số. Dòng lệnh 25 xóa số đếm của timer 1 (chứa trong thanh ghi TMR1) trước khi khởi động bộ đếm, do đó chúng ta sẽ không đếm thiếu trong chu kỳ đầu tiên vì dữ liệu không xác định đang có trong TMR1. Hai dòng lệnh 26 và 27 đặt ngưỡng tràn tương ứng với 0,5 giây ở tần số thực thi lệnh là 5 MHz (tức là chip có clock bằng 20 MHz). Ở dòng 28,
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 7/19 chúng ta xóa cờ ngắt của timer 1, bằng cách xóa (clear) bit T1IF của thanh ghi IFS0. Chế độ làm việc của timer 1 được thiết lập trong thanh ghi T1CON, gồm các thông tin về nguồn clock, prescaler (bộ chia trước), chế độ timer/counter, bật/tắt timer. Các thông tin này được đặt vào thanh ghi T1CON bằng các dòng lệnh 29 và 30. Dòng lệnh 31 cho phép timer 1 tạo ra ngắt khi tràn bằng cách đặt (set) bit T1IE trong thanh ghi IEC0. Và chương trình con luôn luôn cần một lệnh trở về, return, ở đây được đặt tại dòng 32. Bạn hãy đọc phần tương ứng trong datasheet của dsPIC được dùng để có thông tin chi tiết về các chế độ làm việc của timer 1. Từ dòng 33 đến 36, chúng ta có một chương trình con khởi tạo các cổng xuất/nhập (vào/ra). Vì chương trình ví dụ này chỉ sử dụng chân RD0 làm ngõ ra, do đó các chân khác của cổng (port) D được đặt ở trạng thái ngõ vào (Microchip khuyến cáo là các chân không sử dụng nên đặt là ngõ vào, và nối đến VDD hay GND, tránh để các ngõ vào trôi trạng thái một cách tự do). Các lệnh trong chương trình con này đã tự giải thích trong phần chú thích, và khá quen thuộc, do đó tôi không giải thích ở đây nữa. Chương trình xử lý (phục vụ) ngắt timer 1 gồm các dòng lệnh từ 37 đến 39. Bạn chú ý là tên __T1Interrupt đã được định nghĩa trước trong kịch bản liên kết, do đó bạn phải dùng đúng tên này làm nhãn cho phần chương trình mà bạn muốn dùng để xử lý ngắt timer 1. Dòng 37 dùng để xóa cờ ngắt, như bạn đã từng thấy ở dòng 28 trong chương trình con khởi tạo timer 1. Việc xóa cờ ngắt được yêu cầu thực hiện bằng phần mềm, theo như datasheet, và nên được thực thi ngay khi bước vào chương trình xử lý ngắt. Sau khi xóa cờ ngắt, chúng ta sẽ thực hiện công việc tiếp theo là lật trạng thái của ngõ ra RD0. Tương tự như dòng PIC cao cấp PIC18, dsPIC cung cấp một lệnh lật trạng thái bit là btg, như được minh họa ở dòng lệnh 38. Thay vì dùng lệnh btg PORTD, 0 để lật trạng thái RD0, chúng ta dùng hằng số LED được khai báo ở phần đầu chương trình, mà hiệu quả của nó thì hẳn bạn đã nắm rõ, khi bạn quyết định dùng dsPIC và đọc tài liệu này. Các chương trình xử lý ngắt cần có một lệnh trở về khác so với lệnh trở về từ chương trình con, do đó dòng 39 dùng lệnh retfie để trở về chương trình bị ngắt, sau khi đã xử lý xong ngắt. Cuối cùng, tập tin nguồn hợp ngữ cho dsPIC được yêu cầu phải có một dẫn hướng .end cho biết đã kết thúc khối chương trình (program block), mà chúng ta đặt ở dòng 40. Phù! Như vậy là chương trình nháy LED của chúng ta đã viết xong. Bạn hãy thử xem chương trình biên dịch có thành công hay không, hãy tìm các lỗi được thông báo để sửa lại. Nếu chương trình đã được biên dịch thành công thì bạn hãy thử bằng phần cứng với các thông số như trên, nếu bạn muốn mô phỏng bằng MPLAB SIM thì hãy chỉnh lại bộ chia trước và ngưỡng tràn của timer 1 cho thật nhỏ để tránh mất thời gian ngồi chờ máy tính mô phỏng các hoạt động lặp lại của chip hàng triệu lần trước khi chân RD0 đổi trạng thái.
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 8/19 Trước khi chuyển sang ví dụ kế tiếp, bạn có thể luyện tập thêm bằng cách thử điều chỉnh chương trình theo các hướng: điều chỉnh ngưỡng tràn để LED sẽ nhấp nháy đúng 1 Hz (với mã hiện tại thì LED sẽ nhấp nháy ở 1,6 Hz, vì tần số thực thi lệnh của chip sẽ là 8 MHz với bộ dao động nội 8 MHz và PLLx4 được kích hoạt), dùng thêm một LED khác nối vào RD1 (theo cùng cách như bạn đã nối LED vào RD0) và làm cho 2 LED nhấp nháy ngược nhau. 3.2. Ví dụ 2-2 Để sử dụng tập tin nguồn “Vidu2-2.s” (được đính kèm), bạn có thể tạo ra một project mới, hay có thể dùng lại project “Vidu2” bằng cách làm theo hướng dẫn dưới đây (tôi thường làm theo cách này để không phải tạo ra quá nhiều project). Trước hết, trong cửa sổ quản lý tập tin của project, bạn nhấp nút chuột phải vào tên tập tin nguồn “Vidu2-1.s” để làm xuất hiện một mênu gọi lên (pop-up) như hình 3.2 đã minh họa. Sau đó bạn chọn lệnh Remove để xóa tập tin nguồn đó ra khỏi danh sách các tập tin nguồn của project (bạn yên tâm là tập tin nguồn của bạn vẫn không bị xóa). Hình 3.2: Thao tác loại bỏ tập tin nguồn ra khỏi danh sách Tiếp đến bạn sẽ thêm tập tin nguồn mới vào project, bằng cách nhấp nút chuột phải vào đầu mục “Source Files” trong cửa sổ quản lý tập tin đó, và chọn lệnh Add Files ..., như được minh họa trong hình 3.3. Đến đây thì bạn sẽ gặp một hộp thoại cho phép bạn thêm các tập tin nguồn .s vào project, bạn hãy chọn tập tin nguồn “Vidu2-2.s”. Đến đây thì bạn có thể sẽ thắc mắc: Vậy tập tin .hex được tạo ra sẽ có tên gì, nếu tôi cứ thay đổi tên tập tin nguồn, hay project của tôi có nhiều tập tin nguồn? Tập tin đầu ra của project sẽ mang tên của project (ở đây project là “Vidu2”, do đó tên tập tin .hex là “Vidu2.hex”), không phụ thuộc vào tên của các tập tin nguồn. Điều này cần xác định rõ ràng, vì bạn sẽ cần tập tin .hex này để thử chương trình của mình trên phần cứng.
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 9/19 Hình 3.3: Thao tác thêm tập tin nguồn vào danh sách Trong ví dụ 2-2, chúng ta sẽ thực hiện bài toán hiệp sĩ đi tuần (KnightRider), di chuyển điểm sáng qua lại một số LED với tốc độ là 1 giây mỗi lần dịch chuyển. Cổng E của dsPIC được sử dụng để điều khiển LED, cụ thể là các chân RE0 đến RE5 (dsPIC30F4012 chỉ đưa ra các chân RE0 đến RE5, và RE8, mà chúng ta thường dùng các chân liên tiếp nhau trong loại bài toán này để đơn giản hóa phần viết chương trình). Tương tự như trong ví dụ trước, mã nguồn chương trình được liệt kê dưới đây để tiện theo dõi. Sơ đồ mạch phần cứng để thử nghiệm được thể hiện trong hình 3.4. Phần nằm trong khung nét đứt chỉ cần thiết khi bạn dùng thạch anh ngoài, các chân nối nguồn Vdd và Vss không được thể hiện ở đây, nhưng bạn phải đảm bảo đã nối hết các chân đó vào các mức điện áp thích hợp. Vdd R1 33k U1 9 CLKIN/OSC1 10 26 X1 1 RC15/CLKO/OSC2 RE0/PWM1L 25 MCLR RE1/PWM1H 24 RE2/PWM2L 2 23 RB0/CN2/VREF+/AN0/EMUD3 RE3/PWM2H 3 22 8MHz RB1/CN3/VREF-/AN1/EMUC3 RE4/PWM3L 4 21 C2 5 RB2/CN4/SS1/AN2 RE5/PWM3H 16 C1 6 RB3/CN5/INDX/AN3 FLTA/INT0/RE8 33pF 33pF RB4/CN6/IC7/QEA/AN4 7 RB5/CN7/IC8/QEB/AN5 RP1 18 8 RF2/SDA/SDI1/U1RX/EMUC/PGC 17 7 RF3/SCL/SDO1/U1TX/EMUD/PGD 11 6 RC13/CN1/U1ATX/T2CK/SOSCI/EMUD Vdd 12 5 RC14/CN0/U1ARX/T1CK/SOSCO/EMUC 4 15 28 3 EMUC2/OC1/IC1/INT1/RD0 AVDD 14 27 2 EMUD2/OC2/IC2/INT2/RD1 AVSS DSPIC30F4012DIP 1 1k Hình 3.4: Mạch thử nghiệm cho bài toán hiệp sĩ đi tuần Liệt kê mã nguồn “Vidu2-2.s”: 1 .equ __30F4012, 1 2 .include "p30fxxxx.inc" 3 config __FOSC, CSW_FSCM_OFF & FRC_PLL4 4 config __FWDT, WDT_OFF 5 config __FBORPOR, MCLR_EN & PBOR_OFF 6 config __FGS, CODE_PROT_OFF
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 10/19 ;---------------------------------------------------------------------- ;Cac hang so cua chuong trinh (gia tri tuc thoi dung trong chuong trinh) 7 .equiv LED_PORT, PORTE ;LED noi vao cong E 8 .equiv LED_TRIS, TRISE ;Thanh ghi trang thai cua port xuat LED 9 .equiv LED_LAT, LATE ;Thanh ghi chot cua port xuat LED ;---------------------------------------------------------------------- ;Cac khai bao toan cuc: 10 .global __reset ;Khai bao nhan bat dau chuong trinh (bat buoc) 11 .global __T1Interrupt ;Khai bao toan cuc chuong trinh xu ly ngat Timer 1 ;---------------------------------------------------------------------- ;Doan ma trong vung nho chuong trinh 12 .text ;Bat dau doan ma chuong trinh __reset: 13 mov #__SP_init, W15 ;Khoi tao con tro ngan xep (stack) 14 mov #__SPLIM_init, W0 15 mov W0, SPLIM ;Khoi tao thanh ghi gioi han con tro ngan xep (stack) 16 nop ;Can mot lenh NOP sau khi ghi vao SPLIM 17 clr W0 ;Xoa thanh ghi lam viec W0 18 mov W0, W14 ;Xoa cac thanh ghi W1 den W14 19 repeat #12 20 mov W0,[++W14] ;Dia chi cua cac thanh ghi: 0x0002 - 0x001C 21 clr W14 ;---------------------------------------------------------------------- 22 rcall Init_TMR1 ;Khoi tao cho TMR1 (tran moi 1 giay) 23 rcall Init_PORTS ;Khoi tao cac cong I/O 24 mov #0x0001, W1 ;W1 la co chi huong, '1' la dich trai, '0' la ;dich phai, khoi dong la dich trai 25 mov #0x0001, W2 ;bat dau tu bit 0, dich trai 26 mov W2, LED_LAT ;hien thi ra cac LED main_loop: 27 nop 28 nop 29 bra main_loop ;Vong lap chinh, khong lam gi ca, chi cho ngat ;;--------------------------------------------------------------------- ;Chuong trinh con khoi tao TMR1 ;TMR1 duoc khoi tao de tran sau moi 1 giay tai muc xung 8 Mips (fcy = 8 MHz) ;---------------------------------------------------------------------- Init_TMR1: 30 clr TMR1 31 mov #0x7A12, W0 ;TMR1 tran moi 1 giay 32 mov W0, PR1 ;Dat nguong tran vao PR1 33 bclr IFS0, #T1IF ;Xoa co ngat cua TMR1 34 mov #0x8030, W0 ;TMR dung fcy lam clock, prescale la 1:256, 35 mov W0, T1CON ;va khoi dong TMR1 36 bset IEC0, #T1IE ;cho phep ngat khi TMR1 tran 37 return ;---------------------------------------------------------------------- ;Chuong trinh con khoi tao cac cong I/O, de noi voi LED ;---------------------------------------------------------------------- Init_PORTS: 38 clr LED_LAT ;Xoa thanh ghi chot cong xuat LED
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 11/19 39 mov #0xFFC0, W0 ;LED noi vao cong E (RE0 .. RE5) 40 mov W0, LED_TRIS 41 return ;---------------------------------------------------------------------- ;Trinh phuc vu ngat cho TMR1 ;Moi 1 giay ngat nay duoc thuc thi. No se di chuyen cac LED noi vao port E ;---------------------------------------------------------------------- __T1Interrupt: ;Ten nay da duoc dinh truoc trong tap tin lien ket 42 bclr IFS0, #T1IF ;Truoc tien, can xoa co ngat 43 btss W1, #0 ;Co phai dang dich trai? 44 goto shift_right ;Khong, vay la dich phai 45 btsc W2, #5 ;Da den bit 5 roi? 46 goto shift_right ;Dung, vay la dich phai shift_left: 47 bset W1, #0 ;Dat co dich trai 48 sl W2, W2 ;Thuc hien dich trai 49 mov W2, LED_LAT 50 retfie ;Xong viec, tro ve tu ngat shift_right: 51 bclr W1, #0 ;Dat co dich phai 52 btsc W2, #0 ;Da den bit 0 roi? 53 goto shift_left ;Dung, vay la dich trai 54 lsr W2, W2 ;Khong dung, vay van dich phai 55 mov W2, LED_LAT ;Thuc hien dich phai 56 retfie ;Tro ve tu ngat ;---------------------------------------------------------------------- 57 .end ;Ket thuc phan ma trong tap tin nay Những phần mã nguồn giống như trong ví dụ 2-1 tôi sẽ không giải thích lại nữa. Các dòng từ 7 đến 9 khai báo các hằng số được dùng để biểu diễn cổng, thanh ghi trạng thái cổng, và thanh ghi chốt mà các LED sẽ nối vào. Như vậy khi bạn muốn nối LED vào cổng khác thì chỉ cần thay đổi các giá trị cần thiết tại các dòng này, mà không phải tìm trong toàn bộ chương trình để thay thế. Ở đây, chương trình chính của chúng ta vẫn gọi các chương trình con để khởi tạo timer 1 và các cổng vào/ra, và sau một số thao tác khác sẽ đi vào vòng lặp chính, không thực hiện việc gì khác ngoài việc chờ ngắt timer 1. Tuy nhiên, các dòng 24 đến 26 có sự khác biệt so với ví dụ 2-1. Giải pháp để di chuyển vị trí LED sáng qua lại một cách trực quan là dùng các phép toán dịch bit, khi đó chúng ta có thể dùng một thanh ghi để chứa trạng thái các ngõ ra, và một cờ thể hiện hướng dịch. Tôi đã chọn thanh ghi W1 làm cờ chỉ hướng dịch (giá trị 1 là dịch trái và 0 là dịch phải), và thanh ghi W2 làm biến chứa trạng thái của ngõ ra. Như vậy, các dòng 24 đến 26 đặt hướng dịch khởi đầu là dịch trái, và bit có LED được bật sáng là bit 0. Từ dòng 30 đến dòng 37 là chương trình con khởi tạo timer 1, với các lệnh hoàn toàn giống như trong ví dụ 2-1, chỉ có các giá trị ngưỡng tràn và prescale được đặt khác đi để tạo ra một ngắt timer 1 sau mỗi 1 giây ở tần số thực thi lệnh là 8 MHz (tần số xung clock là 32 MHz).
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 12/19 Từ dòng 38 đến dòng 41 là chương trình con khởi tạo các cổng vào/ra. Trong ví dụ này chúng ta dùng cổng E và dùng các chân RE0 đến RE5, do đó các giá trị thiết lập trạng thái cổng và địa chỉ cổng đã khác đi. Phần khác biệt chính là chương trình xử lý ngắt, vì chủ yếu các chức năng của chương trình được đặt ở đây, mà chức năng của chương trình trong ví dụ này là khác với ví dụ trước. Thuật toán ở đây là chúng ta sẽ kiểm tra cờ chỉ hướng dịch, sau đó kiểm tra các điểm biên để đổi hướng dịch nếu cần thiết. Nếu thỏa mãn các điều kiện để dịch theo một hướng nào đó thì sẽ thực hiện dịch bit và xuất kết quả ra các ngõ ra. Bây giờ chúng ta phân tích từng dòng lệnh. Dòng 43 sử dụng lệnh btss (Bit Test Skip if Set) để kiểm tra bit 0 của thanh ghi W1, nếu bit bằng ‘1’ (tức là đang dịch trái) thì sẽ bỏ qua lệnh kế tiếp ở dòng 44, chính là lệnh nhảy đến đoạn chương trình thực hiện dịch phải. Còn nếu lệnh ở dòng 44 được thực thi thì bit 0 của thanh ghi W1 bằng ‘0’, rõ ràng là đang chỉ hướng dịch phải. Tại dòng 45, khi chúng ta đã khẳng định là đang dịch trái, chúng ta sẽ kiểm tra xem LED đã được dịch đến vị trí của RE5 hay chưa, bằng một lệnh btsc (Bit Test Skip if Clear). Nếu bit 5 bằng ‘0’ thì chúng ta vẫn giữ hướng dịch trái, và sẽ thực hiện thao tác dịch trái và sau đó trở về chương trình chính bằng đoạn lệnh tiếp theo, từ dòng 47 đến dòng 50. Ngược lại (bit 5 bằng ‘1’), chúng ta sẽ phải đổi hướng thành dịch phải, do đó sẽ thực thi lệnh nhảy đến đoạn chương trình dịch phải. Ở đoạn lệnh vừa rồi, chúng ta gặp một lệnh nhảy không điều kiện khác là lệnh goto. Lệnh goto có thể nhảy đến bất kỳ địa chỉ nào trong không gian địa chỉ 24-bit của dsPIC, là một lệnh được dùng thừa ở đây (vì chiếm 2 từ lệnh), nhưng được tôi cố ý đưa vào nhằm mục đích giới thiệu. Bạn có thể tiết kiệm một word bộ nhớ chương trình với mỗi lần thay thế goto bằng bra. Bạn thực hiện dịch trái bằng lệnh sl (Shift Left). Lệnh sl có thể thao tác trên các thanh ghi Wn và các thanh ghi chức năng, và có thể dịch tối đa 15 bit trong một lần dịch (chỉ thực hiện dịch nhiều bit trên các thanh ghi Wn). Từ dòng 51 đến dòng 56 là đoạn lệnh thực hiện kiểm tra và dịch phải. Khi bộ xử lý thực thi đến đoạn lệnh này thì chúng ta đã biết chắc chắn là sẽ dịch phải, do đó sẽ đặt cờ chỉ hướng là dịch phải. Nhưng chúng ta sẽ tiếp tục kiểm tra xem đã dịch đến vị trí RE0 hay chưa, nếu đã đến vị trí đó thì chúng ta phải đổi hướng dịch, và nhảy ngược về đoạn lệnh thực hiện dịch trái ở phía trên. Trong trường hợp này, việc đặt lại cờ chỉ hướng dịch là cần thiết, và đó là lý do cho việc xuất hiện lệnh đặt cờ chỉ hướng là dịch trái ở dòng 47. Như đa số các bộ vi xử lý khác, bộ xử lý của dsPIC cũng phân biệt dịch phải số học và dịch phải logic. Ở đây chúng ta thực hiện dịch phải logic, do đó sử dụng lệnh lsr (Logic Shift Right). Tương tự như lệnh sl, lệnh lsr cũng cho phép thao tác trên các thanh ghi Wn và các thanh ghi chức năng, và có thể dịch tối đa 15 bit trong một lần dịch (một lần nữa, chỉ thực hiện dịch nhiều bit trên các thanh ghi Wn). Như bạn có thể thấy, trong ví dụ này, việc thực hiện nhiệm vụ của chương trình được giải quyết một cách trực quan, bám sát hiện tượng. Tuy nhiên, cách giải quyết này
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 13/19 chỉ thích hợp cho một số trường hợp đơn giản, và sẽ gặp khó khăn trong những bài toán đòi hỏi các trạng thái liên tiếp phức tạp hơn hay thậm chí là bất kỳ, hay ngẫu nhiên. Kỹ thuật bảng là một trong những cách giải quyết vấn đề này, và sẽ được nói đến trong ví dụ 2-4. Ví dụ tiếp theo giới thiệu một cách giải quyết khác cho bài toán được nêu ra trong ví dụ 2-2. 3.3. Ví dụ 2-3 Bạn hãy thực hiện các bước tương tự như trong ví dụ 2-2 để loại bỏ tập tin nguồn “Vidu2-2.s” ra khỏi project, và thêm vào project tập tin nguồn “Vidu2-3.s”. Trong ví dụ 2-3, chúng ta sử dụng một biến đếm để theo dõi quá trình di chuyển vị trí LED sáng, thay cho việc kiểm tra các điểm biên trong quá trình di chuyển. Mã nguồn của ví dụ 2-3 được liệt kê dưới đây để tiện theo dõi, nhưng chỉ những phần khác với ví dụ 2-2 là được giải thích. Liệt kê mã nguồn “Vidu2-3.s”: 1 .equ __30F4012, 1 2 .include "p30fxxxx.inc" 3 config __FOSC, CSW_FSCM_OFF & FRC_PLL4 4 config __FWDT, WDT_OFF 5 config __FBORPOR, MCLR_EN & PBOR_OFF 6 config __FGS, CODE_PROT_OFF ;------------------------------------------------------------------------- ;Cac hang so cua chuong trinh (gia tri tuc thoi dung trong chuong trinh) 7 .equiv LED_PORT, PORTE ;LED noi vao cong E 8 .equiv LED_TRIS, TRISE ;Thanh ghi trang thai cua port xuat LED 9 .equiv LED_LAT, LATE ;Thanh ghi chot cua port xuat LED ;------------------------------------------------------------------------- ;Cac khai bao toan cuc: 10 .global __reset ;Khai bao nhan bat dau chuong trinh (bat buoc) 11 .global __T1Interrupt ;Khai bao toan cuc chuong trinh xu ly ngat Timer 1 ;------------------------------------------------------------------------- ;Khai bao cac bien trong RAM 12 .section .bss 13 .align 2 ;chinh dia chi theo boi so cua 2 count: 14 .space 2 ;khai bao bien 'count' kieu word (2 byte) ;------------------------------------------------------------------------- ;Doan ma trong vung nho chuong trinh 15 .text ;Bat dau doan ma chuong trinh __reset: 16 mov #__SP_init, W15 ;Khoi tao con tro ngan xep (stack) 17 mov #__SPLIM_init, W0 18 mov W0, SPLIM ;Khoi tao thanh ghi gioi han con tro ngan xep (stack) 19 nop ;Can mot lenh NOP sau khi ghi vao SPLIM 20 clr W0 ;Xoa thanh ghi lam viec W0
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 14/19 21 mov W0, W14 ;Xoa cac thanh ghi W1 den W14 22 repeat #12 23 mov W0,[++W14] ;Dia chi cua cac thanh ghi: 0x0002 - 0x001C 24 clr W14 ;------------------------------------------------------------------------- 25 rcall Init_TMR1 ;Khoi tao cho TMR1 (tran moi 1 giay) 26 rcall Init_PORTS ;Khoi tao cac cong I/O, W0 dung lam bien trang ;thai cua cac LED 27 mov #0x0001, W1 ;W1 la co chi huong, '1' la dich trai, '0' la ;dich phai, khoi dong la dich trai 28 mov #0x0005, W2 29 mov W2, count ;Bien dem so buoc dich main_loop: 30 nop 31 nop 32 bra main_loop ;Vong lap chinh, khong lam gi ca, chi cho ngat ;;------------------------------------------------------------------------ ;Chuong trinh con khoi tao TMR1 ;TMR1 duoc khoi tao de tran sau moi 1 giay tai muc xung 8 Mips (fcy = 8 MHz) ;------------------------------------------------------------------------- Init_TMR1: 33 clr TMR1 34 mov #0x7A12, W0 ;TMR1 tran moi 1 giay 35 mov W0, PR1 ;Dat nguong tran vao PR1 36 bclr IFS0, #T1IF ;Xoa co ngat cua TMR1 37 mov #0x8030, W0 ;TMR dung fcy lam clock, prescale la 1:256, 38 mov W0, T1CON ;va khoi dong TMR1 39 bset IEC0, #T1IE ;Cho phep ngat khi TMR1 tran 40 return ;------------------------------------------------------------------------- ;Chuong trinh con khoi tao cac cong I/O, de noi voi LED ;------------------------------------------------------------------------- Init_PORTS: 41 clr LED_LAT ;Xoa thanh ghi chot cong xuat LED 42 mov #0xFFC0, W0 ;LED noi vao cong E (RE0 .. RE5) 43 mov W0, LED_TRIS 44 mov #0x0001, W0 ;Dinh trang thai ban dau cho cac LED (RE0 sang) 45 mov W0, LED_LAT ;bit = 1 nghia la LED tuong ung sang 46 return ;------------------------------------------------------------------------- ;Trinh phuc vu ngat cho TMR1 ;Moi 1 giay ngat nay duoc thuc thi. No se di chuyen cac LED noi vao port E ;------------------------------------------------------------------------- __T1Interrupt: ;Ten nay da duoc dinh truoc trong tap tin lien ket 47 bclr IFS0, #T1IF ;Truoc tien, can xoa co ngat 48 btss W1, #0 ;Co phai dich trai khong? 49 goto shift_right ;Khong, vay la dich phai 50 dec count ;Giam bien dem 51 bra NZ, left_s ;Het dich trai chua? 52 clr W1 ;Dung, nhip ke tiep se dich phai 53 mov W2, count ;Dat lai bien dem left_s: 54 sl W0, W0
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 15/19 55 mov W0, LED_LAT ;Thuc hien dich trai 56 retfie ;Xong viec, tro ve tu ngat shift_right: 57 dec count ;Giam bien dem 58 bra NZ, right_s ;Het dich phai chua? 59 mov #0x0001, W1 ;Dung, nhip ke tiep se dich trai 60 mov W2, count ;Dat lai bien dem right_s: 61 lsr W0, W0 62 mov W0, LED_LAT ;Thuc hien dich phai 63 retfie ;Tro ve tu ngat ;------------------------------------------------------------------------- 64 .end ;Ket thuc phan ma trong tap tin nay Với các dòng từ 12 đến 14, chúng ta khai báo một vùng nhớ RAM, trong đó chúng ta có một biến count có kiểu word (2-byte), với các biến được cấp phát theo các phần có địa chỉ bắt đầu cách nhau bằng các bội số của 2 byte (hay nói cách khác, vùng nhớ được canh lề theo từng 2 byte một). Tại các dòng 28 và 29, biến đếm được khởi tạo giá trị là 5 (vì chúng ta dịch chuyển LED sáng từ RE0 cho đến RE5, qua 5 khoảng). Phần khác biệt chính là chương trình xử lý ngắt, vì chúng ta dùng giải pháp và kiểu dữ liệu khác, do đó chương trình xử lý cũng phải khác. Trước tiên, tôi sẽ giải thích đôi chút về thuật toán. Dựa vào cờ chỉ hướng dịch, chúng ta biết được sẽ thực hiện dịch trái hay dịch phải, chúng ta sẽ giảm biến đếm số lần dịch đi 1 sau mỗi lần dịch, và dựa vào biến đếm này để biết đã đến lúc đổi hướng dịch hay chưa. Nếu cần thực hiện đổi hướng dịch thì chúng ta cũng cần đặt lại giá trị khởi động cho biến đếm ở hướng dịch mới. Cụ thể trong chương trình xử lý ngắt của ví dụ 2-3, dòng 47 thực hiện xóa cờ ngắt, là việc cần làm ngay khi vào chương trình xử lý ngắt. Chúng ta kiểm tra xem có phải đang dịch trái hay không ở dòng 48, và sẽ chuyển sang đoạn chương trình dịch phải nếu cờ chỉ hướng là dịch phải bằng lệnh rẽ nhánh ở dòng 49. Tại dòng 50, chúng ta gặp lệnh số học dec dùng để giảm giá trị của biến đếm đi 1 đơn vị, và dựa vào giá trị của biến đếm này để kiểm tra xem có cần đổi hướng dịch hay không ở dòng 51. dsPIC cung cấp các lệnh tăng (inc) hoặc giảm (dec) giá trị của các thanh ghi nói chung hay các thanh ghi Wn. Ngoài ra, còn có các lệnh tăng/giảm từng 2 đơn vị là inc2 và dec2, chấp nhận các toán hạng giống như lệnh inc hoặc dec. Ở dòng 51 (cũng như ở dòng 58), chúng ta thấy có lệnh rẽ nhánh có điều kiện bra NZ, left_s (hay bra NZ, right_s), đây là một lệnh thuộc nhóm lệnh rẽ nhánh có điều kiện. dsPIC cung cấp khá nhiều các lệnh rẽ nhánh có điều kiện (20 lệnh), giúp người lập trình dễ dàng hơn trong việc thể hiện các thuật toán. Vì chúng ta thực hiện giảm biến đếm trước, nên dù đã đếm đến 0, chúng ta vẫn thực hiện dịch trái sau khi đã đặt lại cờ chỉ hướng dịch và biến đếm (bằng các lệnh ở dòng 52 và 53). Sau khi thực hiện dịch trái bằng các dòng 54 và 55, chương trình xử lý ngắt sẽ trở về chương trình chính.
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 16/19 Tương tự như vậy, bạn có thể dễ dàng hiểu được cách hoạt động của đoạn chương trình thực hiện dịch phải từ dòng 57 đến 63. Và dẫn hướng .end tại dòng 64 luôn luôn cần thiết đối với một tập tin nguồn hợp lệ. Tất nhiên bạn có thể dùng ngay một thanh ghi Wn nào đó để dùng làm biến đếm, nhưng ở đây tôi muốn minh hoạ cách dùng biến trong RAM của dsPIC, do đó chương trình đã viết có vẻ dài dòng một cách không cần thiết. 3.4. Ví dụ 2-4 Bạn hãy thực hiện các bước tương tự như trong ví dụ 2-2 để loại bỏ tập tin nguồn “Vidu2-3.s” ra khỏi project, và thêm vào project tập tin nguồn “Vidu2-4.s”. Tương tự như trong phần 3.3, mã nguồn của ví dụ 2-4 sẽ được liệt kê, nhưng chỉ những phần khác với ví dụ 2-2 là được giải thích. Liệt kê mã nguồn “Vidu2-4.s”: 1 .equ __30F4012, 1 2 .include "p30fxxxx.inc" 3 config __FOSC, CSW_FSCM_OFF & FRC_PLL4 4 config __FWDT, WDT_OFF 5 config __FBORPOR, MCLR_EN & PBOR_OFF 6 config __FGS, CODE_PROT_OFF ;------------------------------------------------------------------------- ;Cac hang so cua chuong trinh (gia tri tuc thoi dung trong chuong trinh) 7 .equiv LED_PORT, PORTE ;LED noi vao cong E 8 .equiv LED_TRIS, TRISE ;Thanh ghi trang thai cua port xuat LED 9 .equiv LED_LAT, LATE ;Thanh ghi chot cua port xuat LED ;------------------------------------------------------------------------- ;Cac khai bao toan cuc: 10 .global __reset ;Khai bao nhan bat dau chuong trinh (bat buoc) 11 .global __T1Interrupt ;Khai bao toan cuc chuong trinh xu ly ngat Timer 1 ;------------------------------------------------------------------------- ;Khai bao bang hang so trong ROM 12 .section Table, psv, address(0x0200) ;bang ma hoa cac trang thai ;Bang nay dung cho LED cathode chung ; .hword 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020 ; .hword 0x0010, 0x0008, 0x0004, 0x0002 ;Bang nay dung cho LED anode chung 13 .hword 0xFFFE, 0xFFFD, 0xFFFB, 0xFFF7, 0xFFEF, 0xFFDF 14 .hword 0xFFEF, 0xFFF7, 0xFFFB, 0xFFFD ;------------------------------------------------------------------------- ;Doan ma trong vung nho chuong trinh 15 .text ;Bat dau doan ma chuong trinh
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 17/19 __reset: 16 mov #__SP_init, W15 ;Khoi tao con tro ngan xep (stack) 17 mov #__SPLIM_init, W0 18 mov W0, SPLIM ;Khoi tao thanh ghi gioi han con tro ngan xep (stack) 19 nop ;Can mot lenh NOP sau khi ghi vao SPLIM 20 clr W0 ;Xoa thanh ghi lam viec W0 21 mov W0, W14 ;Xoa cac thanh ghi W1 den W14 22 repeat #12 23 mov W0,[++W14] ;Dia chi cua cac thanh ghi: 0x0002 - 0x001C 24 clr W14 ;------------------------------------------------------------------------- 25 rcall Init_TMR1 ;Khoi tao cho TMR1 (tran moi 1 giay) 26 rcall Init_PORTS ;Khoi tao cac cong I/O, W0 dung lam bien trang ;thai cua cac LED 27 bset CORCON, #PSV ;Cho phep dung Program Space Visibility (PSV) 28 mov #psvpage(Table), W0 ;Lay dia chi trang cua bang du lieu 29 mov W0, PSVPAG ;va ghi vao thanh ghi trang PSV 30 mov #psvoffset(Table), W1 ;W1 chua dia chi offset cua bang du lieu 31 mov W1, W2 ;W2 la dau bang du lieu 32 add W1, #(10*2), W3 ;W3 la vi tri ngay sau bang du lieu main_loop: 33 nop 34 nop 35 bra main_loop ;Vong lap chinh, khong lam gi ca, chi cho ngat ;;------------------------------------------------------------------------ ;Chuong trinh con khoi tao TMR1 ;TMR1 duoc khoi tao de tran sau moi 1 giay tai muc xung 8 Mips (fcy = 8 MHz) ;------------------------------------------------------------------------- Init_TMR1: 36 clr TMR1 37 mov #0x7A12, W0 ;TMR1 tran moi 1 giay 38 mov W0, PR1 ;Dat nguong tran vao PR1 39 bclr IFS0, #T1IF ;Xoa co ngat cua TMR1 40 mov #0x8030, W0 ;TMR dung fcy lam clock, prescale la 1:256, 41 mov W0, T1CON ;va khoi dong TMR1 42 bset IEC0, #T1IE ;Cho phep ngat khi TMR1 tran 43 return ;------------------------------------------------------------------------- ;Chuong trinh con khoi tao cac cong I/O, de noi voi LED ;------------------------------------------------------------------------- Init_PORTS: 44 clr LED_LAT ;Xoa thanh ghi chot cong xuat LED 45 mov #0xFFC0, W0 ;LED noi vao cong E (RE0 .. RE5) 46 mov W0, LED_TRIS 47 return ;------------------------------------------------------------------------- ;Trinh phuc vu ngat cho TMR1 ;Moi 1 giay ngat nay duoc thuc thi. No se di chuyen cac LED noi vao port E ;------------------------------------------------------------------------- __T1Interrupt: ;Ten nay da duoc dinh truoc trong tap tin lien ket 48 bclr IFS0, #T1IF ;Truoc tien, can xoa co ngat 49 mov [W1++],W0 ;Lay trang thai can hien thi+dieu chinh con tro 50 mov W0, LED_LAT ;va hien thi 51 cpsgt W3, W1 ;Da het bang chua? 52 mov W2, W1 ;Dung, tro ve dau bang
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 18/19 53 retfie ;Tro ve tu ngat ;------------------------------------------------------------------------- 54 .end ;Ket thuc phan ma trong tap tin nay Với các dòng 12 đến 14, chúng ta khai báo một bảng hằng số trong ROM tên là Table, được truy xuất thông qua một cơ chế đặc biệt của dsPIC, được gọi là PSV (Program Space Visibility). Ở đây chúng ta tạm hiểu là một cửa sổ nhìn vào không gian bộ nhớ chương trình được mở ra, cho phép chúng ta dùng một trong những thanh ghi Wn làm con trỏ đến bảng dữ liệu và truy xuất bằng kiểu định vị gián tiếp thanh ghi như chúng ta vẫn làm với các dữ liệu 16-bit trong RAM. Các bước chuẩn bị cho việc sử dụng PSV được minh họa bằng các dòng 27 đến 30. Trước hết, chúng ta cần đặt (set) bit PSV trong thanh ghi CORCON, như dòng 27. Sau đó, chúng ta dùng toán tử psvpage() để lấy địa chỉ trang của bảng dữ liệu đặt và vào trong thanh ghi trang PSV (dòng 28 và 29). Sau cùng, chúng ta dùng toán tử psvoffset() để lấy địa chỉ offset của bảng dữ liệu, đặt vào một trong các thanh ghi Wn để dùng làm con trỏ truy xuất bảng dữ liệu sau này, minh hoạ bằng dòng 30. Ở các dòng 31 và 32, chúng ta xác định hai địa chỉ đầu và cuối của bảng dữ liệu. Bạn chú ý là ở dòng 32 chúng ta có một lệnh số học hơi đặc biệt, có 3 toán hạng. Lệnh này sẽ cộng toán hạng thứ nhất với toán hạng thứ hai (là một hằng số lưu trong 5-bit, nghĩa là phải nhỏ hơn 32), sau đó lưu kết quả vào toán hạng thứ ba. Bây giờ chúng ta hãy xem chương trình xử lý ngắt của chúng ta ra sao với cách dùng kỹ thuật bảng này. Dòng 48 hẳn là không cần phải giải thích nữa. Vì dữ liệu xuất đã được chuẩn bị sẵn trong bảng, chúng ta chỉ cần truy xuất bằng một lệnh sao chép dữ liệu dùng kiểu định vị gián tiếp thanh ghi (dòng 49), sau đó xuất ra ngõ ra (dòng 50). Con trỏ đã được cập nhật ngay trong lệnh truy xuất dữ liệu ở dòng 49. Chúng ta chỉ còn cần kiểm tra xem đã xuất hết bảng dữ liệu hay chưa bằng cách kiểm tra con trỏ so với vị trí cuối bảng. Vì con trỏ được cập nhật sau khi truy xuất dữ liệu, nên chúng ta phải kiểm tra địa chỉ ngay sau bảng dữ liệu, thay vì là địa chỉ cuối bảng dữ liệu, tại dòng 51. Nếu con trỏ nhỏ hơn địa chỉ này, chúng ta không cần đưa con trỏ về đầu bảng, ngược lại, chúng ta đặt lại giá trị cho con trỏ để nó chỉ đến đầu bảng dữ liệu, như dòng 52 đã minh họa. Sau khi hoàn tất các nhiệm vụ, chương trình xử lý ngắt sẽ trở về chương trình bị ngắt (ở đây là chương trình chính) với dòng 53. Dòng 54 đóng lại mã nguồn của chương trình. Để đánh giá tầm quan trọng của kỹ thuật bảng này, bạn hãy nghĩ xem nếu không dùng kỹ thuật này thì bạn sẽ thực hiện việc hiển thị các mẫu phức tạp, ví dụ cho các LED sáng từ ngoài vào trong hay từ trong ra ngoài, hay các mẫu ngẫu nhiên ra sao. Một điều cần chú ý là các chương trình ví dụ ở đây hoàn toàn không phải là tối ưu. Do đó, sau khi làm quen, sửa lỗi (nếu có) và biên dịch thành công các ví dụ này, bạn hãy suy nghĩ thêm về các phương án sửa đổi các ví dụ, thử thực hiện các sửa đổi và quan sát các thay đổi có thể có, đánh giá các ảnh hưởng của các sửa đổi đó. Cách thực
- Người báo cáo: Nguyễn Quang Nam Tài liệu: TUT02.01 Ngày: 5/3/2006 Trang: 19/19 hành như vậy sẽ giúp bạn hiểu rõ hơn về các khía cạnh khác nhau của việc lập trình hợp ngữ cho dsPIC. 4. Tóm tắt Trong tutorial này, thông qua các ví dụ về hiển thị LED, một khung cơ bản của một chương trình hợp ngữ viết cho dsPIC đã được trình bày. Các kỹ thuật thiết lập ngăn xếp, đặt cấu hình cho chip, khai báo các vùng nhớ, khai báo chương trình chính, chương trình con, chương trình xử lý ngắt đã được giới thiệu. Bạn đã được giới thiệu về một số lệnh thuộc các nhóm lệnh: lệnh sao chép dữ liệu, lệnh số học, lệnh luận lý, lệnh dịch/xoay, lệnh thao tác bit, lệnh so sánh, lệnh chuyển điều khiển. Cách thiết lập và sử dụng cổng vào/ra, cũng như bộ định thời đã được nói đến. Các kiểu định vị thanh ghi, định vị tức thời, cũng như định vị gián tiếp thanh ghi cũng được đề cập. Tôi cũng xin đề nghị là khi bạn lập trình cho vi điều khiển, bạn nên có sẵn các tài liệu tham khảo trong tay (với dsPIC và dùng hợp ngữ thì bạn nên có sẵn trong tay các tài liệu MPLAB ASM30, MPLAB LINK30, and Utilities User’s Guide (DS51317) và dsPIC30F/33F Programmer’s Reference Manual (DS70157), cùng với datasheet của chip đang được sử dụng). Các tài liệu này ngoài những thông tin không thể thiếu mà bạn cần tham khảo, còn có nhiều ví dụ rất trực quan giúp bạn rút ngắn đáng kể thời gian viết chương trình. Chúc bạn thành công!
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Sap 2000 - Phần bài tập thực hành 6
10 p |
240 |
194
-
THE JAVA™ TUTORIAL
517 p |
184 |
104
-
Tài Liệu CSS Tiếng Việt Cơ Bản
65 p |
217 |
102
-
NỀN TẢNG NGÔN NGỮ C# phần 1
10 p |
92 |
18
-
AJAX Tutorial link
2 p |
65 |
13
-
C# Giới Thiệu Toàn Tập part 3
4 p |
39 |
10
-
C# Giới Thiệu Toàn Tập part 6
11 p |
50 |
8
-
C# Giới Thiệu Toàn Tập part 4
15 p |
46 |
8
-
C# Giới Thiệu Toàn Tập part 7
3 p |
32 |
7
-
C# Giới Thiệu Toàn Tập part 2
7 p |
43 |
7
-
SQL Pro Tutorial phần 6
3 p |
72 |
7
-
C# Giới Thiệu Toàn Tập part 1
7 p |
49 |
6
-
C# Giới Thiệu Toàn Tập part 9
2 p |
26 |
5
-
Ajax tutorials Link
2 p |
32 |
4
-
SQL Pro Tutorial phần 5
1 p |
58 |
4
-
C# Giới thiệu toàn tập part4
15 p |
40 |
3
-
C# Giới thiệu toàn tập part1
7 p |
50 |
3

WARC-Type: response

Content-Type: application/http; msgtype=response

WARC-Identified-Payload-Type: application/xhtml+xml

Server: Apache/2.2.31 (CentOS)

Connection: close

Pragma: no-cache

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Set-Cookie: TLDEVNamespace=o5o837q63npgsn2f0jj6q7nci5; path=/; domain=.tailieu.vn; HttpOnly

Vary: Accept-Encoding

Content-Type: text/html; charset=UTF-8


markdown:
# Chuyển sang mã hóa
**Chuyển sang mã hóa**
-
Chuyển sang mã hóa WPA/WPA2-Enterprise Các mạng Wi-Fi trong doanh nghiệp nào cũng cần sử dụng chế độ Enterprise của mã hóa WPA hoặc WPA2. Trong bài này, chúng tôi sẽ giới thiệu cho các bạn cách chuyển từ chế độ Personal (PSK) sang chế độ Enterprise (RADIUS). Chắc chắn nhiều người trong số bạn đọc đã biết, mã hóa Wired Equivalent Privacy (WEP) là một kiểu mã ngày nay không còn an toàn.
9p
conquynho32
12-09-2012
49
10
Download
-
MÃ HOÁ 8 ĐƯỜNG SANG 3 ĐƯỜNG 8 ngõ vào chuyển thành 3 ngõ ra dạng số nhị phân 3 bit. Chỉ có 1 ngõ vào ở mức tích cực tương ứng với chỉ một tổ hợp mã số 3 ngõ ra; tức là mỗi 1 ngõ vào sẽ cho ra 1 mã số 3 bit khác nhau. Với 8 ngõ vào (I0 đến I7) thì sẽ có 8 tổ hợp ngõ ra nên chỉ cần 3 ngõ ra (Y2, Y1, Y0).
28p
hoangnt174
02-06-2010
346
164
Download
-
Mã hóa (Encryption) là quá trình chuyển dử liệu dưới dạng bình thường (Plaintext) sang dạng không thể đọc hoặc không thể hiểu (Ciphertext).
38p
truongkhamtan
08-01-2011
87
23
Download
-
Mã độc đang ngày một trưởng thành .Hãng bảo mật McAfee cảnh báo mã độc hiện đang trên đà phát triển chuẩn bị đạt đến một cấp độ phức tạp và chuyên nghiệp mới. Không những thế mã độc và phần mềm quảng cáo hiện nay còn đang trở thành một dịch vụ chuyên nghiệp được phân phối và vận hành ở một cấp độ đối kháng trực tiếp với một số ứng dụng doanh nghiệp.
6p
yeurauxanh88
05-10-2012
30
6
Download
-
Trojan là gì? Hoạt động ra sao? Trojan là một loại virus máy tính, có tên từ một câu chuyện thần thoại Hi Lạp. Những người Hi Lạp trong chiến tranh đã tặng cho kẻ thù của mình một con ngựa làm bằng gỗ khổng lồ trong đó có giấu những chiến binh dũng cảm. Kẻ thù của những người Hi Lạp chấp nhận quà tặng này và họ mang vào trong thành, và ngay trong đêm đó, những chiến binh đã chui ra khỏi ngựa và đánh chiếm thành.
4p
bibocumi28
22-01-2013
35
5
Download
-
Các mạng Wi-Fi trong doanh nghiệp nào cũng cần sử dụng chế độ Enterprise của mã hóa WPA hoặc WPA2. Trong bài này, chúng tôi sẽ giới thiệu cho các bạn cách chuyển từ chế độ Personal (PSK) sang chế độ Enterprise (RADIUS). Chắc chắn nhiều người trong số bạn đọc đã biết, mã hóa Wired Equivalent Privacy (WEP) là một kiểu mã ngày nay không còn an toàn.
7p
wiwinn
27-07-2013
30
5
Download
-
Cảnh báo hacker dùng thảm họa ở Nhật để lừa đảo .Mới đây, cơ quan an ninh mạng của Mỹ (US-CERT) vừa lên tiếng cảnh báo giới tin tặc lừa đảo có thể lợi dụng thảm họa động đất và sóng thần vừa qua ở Nhật Bản để trục lợi bất lương.
5p
yeutinh98
19-09-2012
26
3
Download
-
Khi bắt đầu tìm hiểu về mã hoá, chúng ta thường đặt ra những câu hỏi chẳng hạn như là: Tại sao cần phải sử dụng mã hoá ? Tại sao lại có quá nhiều thuật toán mã hoá ?v..v… Tai sao cần phải sử dụng mã hoá ? Thuật toán Cryptography đề cập tới nghành khoa học nghiên cứu về mã hoá và giải mã thông tin. Cụ thể hơn là nghiên cứu các cách thức chuyển đổi thông tin từ dạng rõ (clear text) sang dạng mờ (cipher text) và ngược lại. Đây là một phương pháp...
7p
vankent
12-07-2010
198
88
Download
-
Khi có người sử dụng trộm mạng WiFi của bạn, họ sẽ làm chậm đường truyền, thậm chí, còn có thể trộm thông tin từ máy tính của bạn hay làm cho máy tính của bạn bị nhiễm vi rút. Vì vậy, bài viết sau đây sẽ giúp bạn đối phó với tình trạng này. Cách phát hiện Mạng không dây của bạn chạy chậm? Bạn thấy thiết bị của mình kết nối tới Internet chậm mà bạn không thể tìm ra lý do? Nếu bạn thường xuyên gặp vấn đề này, có thể kết nối không dây của bạn...
4p
bibocumi5
04-10-2012
43
15
Download
-
Ngày 26-9-2006, tân Thủ t-ớng Nhật Bản Shinzo Abe lên cầm quyền cũng là lúc quan hệ Trung-Nhật chuyển sang thời “hậu Koizumi”. Quan hệ Trung-Nhật từ căng thẳng chuyển sang hoà dịu là phù hợp với xu thế lịch sử, phù hợp với lợi ích của hai n-ớc và có lợi cho hoà bình, ổn định và hợp tác trong khu vực cũng nh- trên thế giới.
8p
gaunau123
27-11-2011
28
15
Download
-
Đột biến gen mã hóa các protein cảm thụ ánh sáng và thị lực Những nghiên cứu đầu tiên mô tả sự bất thường trong khả năng cảm thụ ánh sáng ở người được bắt đầu từ khoảng 200 năm trước. Thời đó, người ta phát hiện ra nhiều đột biến có thể gây ảnh hưởng đến thị lực ở người. Bằng việc phân tích các kiểu hình liên quan đến mỗi loại đột biến và sau đó kiểm tra sự biến đổi của ADN ...
8p
butmauvang
29-08-2013
50
6
Download
-
Do đó, bạn phải cần đến WPA/WPA2 Enterprise để thực hiện việc xác thực máy chủ RADIUS, nhưng việc thêm một máy chủ RADIUS vào mạng thường lại dẫn đến một mức giá và độ phức tạp mà nhiều công ty – nhất là các công ty nhỏ không thể hoặc không bằng lòng chấp nhận.
3p
bibocumi29
24-01-2013
31
6
Download
-
Vậy sự giảm tốc độ này là do đâu? Bạn có thể nghe nói một số thiết bị điện tử gia đình như lò vi sóng và điện thoại không dây gây cản trở truyền Wi-Fi. Để tìm ra sự thực từ những giả thuyết, chúng tôi đã tiến hành nghiên cứu và tham khảo ý kiến của chuyên gia Nandan Kalle của hãng sản xuất định tuyến Belkin. 1. Kẻ thù số 1: Mạng Wi-Fi nhà hàng xóm “Theo tôi nguồn gây cản trở lớn nhất cho hầu hết mọi người là mạng Wi-Fi của hàng xóm”, ông Kalle...
4p
bibocumi25
09-01-2013
18
5
Download
-
Những lệnh About trong Google chrome có thể bạn chưa biết! .Google Chrome là một trình duyệt web có khả năng cho phép người dùng can thiệp vào một số thành phần bên trong để bật tắt các tính năng mà bạn không làm được trên giao diện người dùng mặc định. Những tính năng này được cài đặt vào 7 Chrome About Pages mà người dùng có thể truy cập bằng cách gõ từ khóa lên thanh địa chỉ theo cú pháp: about:.
7p
chiecxedien
02-01-2013
46
3
Download
-
Smart Converter là tiện ích nhỏ gọn và là phần mềm mạnh mẽ có khả năng chuyển đổi qua lại giữa các định dạng video cực kỳ đơn giải chỉ với thao tác kéo và thả mà không cần thực hiện bất kỳ loại thiết lập phức tạp nào. Ứng dụng cho phép chuyển đổi video từ nhiều định dạng khác nhau sang các định dạng video chuẩn cho các thiết bị di động như Apple TV, iPad, iPod, iPhone, tablet Android, smartphone, Sony PSP, PlayStation 3, Sony Bavaria TV, Google TV, và Microsoft Xbox 360.
4p
sunshine_10
29-07-2013
18
3
Download
-
Mã hóa dữ liệu với Windows XP Professional .Bạn là một cố vấn doanh nghiệp và liên tục phải di chuyển. Bạn mang theo laptop mọi nơi mọi lúc – trong các chuyến đi công tác, sang đối tác khách hàng hay thậm chí là những ngày nghỉ lễ. Việc duy trì sự riêng tư các dữ liệu mật của khách hàng chính là một thành công của doanh nghiệp cũng như danh tiếng của bạn.
5p
conquynho32
14-09-2012
24
2
Download
-
Làm gì khi chuyển email mới? Bạn có thường xuyên sử dụng các dịch vụ email? Hiện nay nổi bật với ba dịch vụ Gmail, Yahoo và Outlook.com, Outlook.com vừa mới ra mắt gần đây với nhiều tính năng nổi bật và bạn muốn chuyển sang sử dụng Outlook.com làm địa chỉ mail chính, như thế đồng nghĩa với việc bạn phải tìm lại địa chỉ trên hệ thống email cũ mỗi khi muốn gởi email cho một ai đó mà bạn không nhớ rõ địa chỉ.
6p
quygia123
05-11-2012
26
3
Download
-
Tôi quyết định việc đi Tuy Hòa một cách gấp gáp bất ngờ, bất ngờ đến nỗi trong túi không mang theo hơn mười đồng bạc. Lê Bá Tại bảo tôi: - Anh nên đi thẳng ra Tuy Hòa đi. Chỉ cần một ngày vừa đi vừa về. Nếu anh giải quyết công việc nhanh chóng thì sáng chủ nhật đi, anh có thể về đây trong chiều chủ nhật. Chậm lắm thì sáng thứ Hai về. Vấn đề đối với tôi không phải là thì giờ nhanh chậm mà là những trở ngại trên đường. Sống cuộc đời định...
25p
lichxanh
03-06-2013
19
2
Download
-
9 mẹo hay với chuột bạn đã từng thử chưa? Chuột là một trong những sáng tạo tuyệt vời nhất trong lịch sử máy tính. Nhưng bao nhiêu người trong chúng ta thực sự đã sử dụng hết các công dụng của chuột? Hãy thử 9 mẹo nhỏ sau, bạn sẽ thấy chuột thật là thú vị. .
7p
quygia123
05-11-2012
20
2
Download
-
4)IC đảo 74LS04 Đây là IC tích hợp 6 ổng đảo NOT _cổng đảo NOT là phần tử logic có 1 đầu vào ,1 đầu ra thực hiện phép toán phủ định Sơ đồ chân: Trong đó: _các chân đầu vào là:1,3,5,9,11,13 _các chân đầu ra là:2,4,6,8,10,12 _chân 14 nối nguồn dương 5V _chân 7 nối mass ĐẶC TÍNH CỦA IC: HÌNH DẠNG VÀ KHOẢNG CÁCH CÁC CHÂN CỦA IC: 5)IC giải mã 74LS247 Chức năng IC 74LS247: Đây là IC chuyển từ mã nhị phân sang các số tương ứng được hiển thị trên led 7 đoạn.
11p
goixanh
22-09-2010
605
177
Download

Set-Cookie: TLDEVNamespace=1gh32e0fl7pfi72lpkajulngq0; path=/; domain=.tailieu.vn; HttpOnly